Giter VIP home page Giter VIP logo

cloudnet-v2's Introduction

This project is archived! Please consider using CloudNet v3. The modules have been moved to a separate organization.

star this repo fork this repo GitHub license

GitHub contributors Github All Releases GitHub release

CloudNet | The Cloud Network Environment Technology 2

Image of CloudNet

This is the CloudNet project, which has already taken a lot of time and effort for over 1 year. Here you can find the most recent commits to the project. I am absolutely not satisfied by the code and find it horribly awful.

CloudNet is a cloud computing service for Minecraft networks. With a wide range of functionality, it offers both control over Minecraft Servers (Craftbukkit / Spigot / Glowstone) and BungeeCord Proxys.

CloudNet manages server and helps networks to expand through new technologies to help the administration of a Minecraft Network. Another aspect of CloudNet are the unlimited development possibilities because you are able to build your own modules and extensive programming interfaces. CloudNet supports a wide range of needs and future opportunities, such as a Round Robin DNS management with the CloudFlare company service and the multi-proxy functionality for networks with more than 500 players, the project is important to enable high performance and stabilization for a Minecraft network.

For general information about CloudNet go to spigotmc.org.

Requirements

  • Java 8
  • Linux/Windows server with a minimum of 2GB DDR3 Memory and 2 vCores

The use of Linux containers (LXC) or OpenVZ containers (OVZ) is discouraged. There are many issues with their stability.
Use of KVM virtualization or dedicated servers is recommended.

Support

  • Spigot-Support » 1.7.10 - 1.14
    • PaperSpigot, TacoSpigot, Hose, Torch
  • BungeeCord-Support » 1.7.10 - 1.14
    • Flexpipe, HexaCord, Waterfall, TraverTine

Discord

Developer

If you would like to contribute to this repository, feel free to fork the repo and then create a pull request to our current dev branch.

Maven:

    <repositories>
        <repository>
            <id>cloudnet-repo</id>
            <url>https://cloudnetservice.eu/repositories</url>
        </repository>
    </repositories>

    <dependencies>
        <!-- Spigot/BungeeCord -->
        <dependency>
            <groupId>de.dytanic.cloudnet</groupId>
            <artifactId>cloudnet-api-bridge</artifactId>
            <version>2.1.17</version>
            <scope>provided</scope>
        </dependency>
         <!-- CloudNet Core -->
        <dependency>
            <groupId>de.dytanic.cloudnet</groupId>
            <artifactId>cloudnet-core</artifactId>
            <version>2.1.17</version>
            <scope>provided</scope>
        </dependency>
     </dependencies>

cloudnet-v2's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cloudnet-v2's Issues

Wrappers should set their local address when connecting to the master

The wrapper verification works through the comparison of the address of the connected wrapper and the address of the wrapper in the services.json.
If a server has multiple public ips, this can lead to issues when trying to connect to the master, because the wrapper doesn't set the local address when connecting to the master, so the ips might not be the same.
The wrapper should set the address in the config.yml as its local address.

NPE in the SignSelector/MobSelector on "ServerRemove"

When the Cloud sends a Channel Message to all Servers (e. g. with CloudAPI#sendChannelMessage), a NullPointerException is produced on every server which has Signs/Mobs enabled. The PacketOutChannelMessage is sent with the ID 404 from the Master, but the Bridge Plugin listens for the PacketInRemoveServer Packet on that ID. The "serverInfo" is null on receiving that packet and therefore an NPE is thrown.

[13:23:17] [TaskScheduler-Group--1768132442256842865#1/ERROR]: Error on handling Task on Thread [TaskScheduler-Group--1768132442256842865#1]
java.lang.NullPointerException
	at de.dytanic.cloudnet.bridge.internal.serverselectors.MobSelector$NetworkHandlerAdapterImplx.onServerRemove(MobSelector.java:454) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.api.network.packet.in.PacketInServerRemove$2.run(PacketInServerRemove.java:27) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.api.network.packet.in.PacketInServerRemove$2.run(PacketInServerRemove.java:24) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.utility.CollectionWrapper.iterator(CollectionWrapper.java:61) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.api.handlers.NetworkHandlerProvider.iterator(NetworkHandlerProvider.java:35) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.api.network.packet.in.PacketInServerRemove.handleInput(PacketInServerRemove.java:24) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.network.protocol.packet.PacketManager$2.run(PacketManager.java:99) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.network.protocol.packet.PacketManager$2.run(PacketManager.java:92) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.utility.CollectionWrapper.iterator(CollectionWrapper.java:61) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.network.protocol.packet.PacketManager.dispatchPacket(PacketManager.java:92) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.network.NetDispatcher$1.run(NetDispatcher.java:66) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.scheduler.TaskScheduler$VoidTaskEntry$1.call(TaskScheduler.java:585) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.scheduler.TaskScheduler$VoidTaskEntry$1.call(TaskScheduler.java:579) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.scheduler.TaskEntry.invoke(TaskEntry.java:33) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.scheduler.TaskScheduler$Worker.execute(TaskScheduler.java:527) [CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.scheduler.TaskScheduler$Worker.run(TaskScheduler.java:490) [CloudNetAPI.jar:2.1.17]```

Master Stop Wrapper connection issue

Description:
This issue coming up, if the master stopping before the wrapper.

CloudNet Version: 2.2.0
Java Version:

openjdk version "11.0.6" 2020-01-14 LTS
OpenJDK Runtime Environment Zulu11.37+17-CA (build 11.0.6+10-LTS)
OpenJDK 64-Bit Server VM Zulu11.37+17-CA (build 11.0.6+10-LTS, mixed mode)

System Info:

Hostname:                                      XXXX-HP-LT
Betriebssystemname:                            Microsoft Windows 10 Pro
Betriebssystemversion:                         10.0.18363 Nicht zutreffend Build 18363
Betriebssystemhersteller:                      Microsoft Corporation
Betriebssystemkonfiguration:                   Mitglied der Domäne/Arbeitsgruppe
Betriebssystem-Buildtyp:                       Multiprocessor Free
Registrierter Benutzer:                        meinerlp
Registrierte Organisation:                     Nicht zutreffend
Produkt-ID:                                    00330-50000-00000-AAOEM
Ursprüngliches Installationsdatum:             05.01.2020, 14:17:22
Systemstartzeit:                               23.02.2020, 08:40:05
Systemhersteller:                              HP
Systemmodell:                                  HP EliteBook 830 G5
Systemtyp:                                     x64-based PC
Prozessor(en):                                 1 Prozessor(en) installiert.
                                               [01]: Intel64 Family 6 Model 142 Stepping 10 GenuineIntel ~1792 MHz
BIOS-Version:                                  HP Q78 Ver. 01.08.01, 18.07.2019
Windows-Verzeichnis:                           C:\Windows
System-Verzeichnis:                            C:\Windows\system32
Startgerät:                                    \Device\HarddiskVolume1
Systemgebietsschema:                           de;Deutsch (Deutschland)
Eingabegebietsschema:                          de;Deutsch (Deutschland)
Zeitzone:                                      (UTC-05:00) Eastern Zeit (USA & Kanada)
Gesamter physischer Speicher:                  32.611 MB
Verfügbarer physischer Speicher:               22.696 MB
Virtueller Arbeitsspeicher: Maximale Größe:    37.475 MB
Virtueller Arbeitsspeicher: Verfügbar:         26.732 MB
Virtueller Arbeitsspeicher: Zurzeit verwendet: 10.743 MB
Auslagerungsdateipfad(e):                      C:\pagefile.sys
Domäne:                                        XXXX.XXXX
Anmeldeserver:                                 \\XXXX
Hotfix(es):                                    9 Hotfix(e) installiert.
                                               [01]: KB4534132
                                               [02]: KB4497727
                                               [03]: KB4516115
                                               [04]: KB4517245
                                               [05]: KB4524569
                                               [06]: KB4528759
                                               [07]: KB4537759
                                               [08]: KB4538674
                                               [09]: KB4532693
Anforderungen für Hyper-V:                     Erweiterungen für den VM-Überwachungsmodus: Ja
                                               Virtualisierung in Firmware aktiviert: Ja
                                               Adressübersetzung der zweiten Ebene: Ja
                                               Datenausführungsverhinderung verfügbar: Ja

Stacktrace:

[23.02.2020 11:46:16] INFO: Failed to connect... [1]
[23.02.2020 11:46:16] SEVERE: io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: /169.254.148.200:1410
[23.02.2020 11:46:16] SEVERE: Caused by: java.net.ConnectException: Connection refused: no further information
[23.02.2020 11:46:16] SEVERE:   at java.base/sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
[23.02.2020 11:46:16] SEVERE:   at java.base/sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:779)
[23.02.2020 11:46:16] SEVERE:   at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:330)
[23.02.2020 11:46:16] SEVERE:   at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:334)
[23.02.2020 11:46:16] SEVERE:   at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:702)
[23.02.2020 11:46:16] SEVERE:   at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:650)
[23.02.2020 11:46:16] SEVERE:   at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:576)
[23.02.2020 11:46:16] SEVERE:   at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493)
[23.02.2020 11:46:16] SEVERE:   at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
[23.02.2020 11:46:16] SEVERE:   at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
[23.02.2020 11:46:16] SEVERE:   at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
[23.02.2020 11:46:16] SEVERE:   at java.base/java.lang.Thread.run(Thread.java:834)
[23.02.2020 11:46:18] INFO: Failed to connect... [2]
[23.02.2020 11:46:18] SEVERE: io.netty.util.concurrent.BlockingOperationException: DefaultChannelPromise@4cab76e6(incomplete)
[23.02.2020 11:46:18] SEVERE:   at io.netty.util.concurrent.DefaultPromise.checkDeadLock(DefaultPromise.java:461)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.DefaultChannelPromise.checkDeadLock(DefaultChannelPromise.java:159)
[23.02.2020 11:46:18] SEVERE:   at io.netty.util.concurrent.DefaultPromise.await(DefaultPromise.java:246)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.DefaultChannelPromise.await(DefaultChannelPromise.java:131)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.DefaultChannelPromise.await(DefaultChannelPromise.java:30)
[23.02.2020 11:46:18] SEVERE:   at io.netty.util.concurrent.DefaultPromise.sync(DefaultPromise.java:403)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.DefaultChannelPromise.sync(DefaultChannelPromise.java:119)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.DefaultChannelPromise.sync(DefaultChannelPromise.java:30)
[23.02.2020 11:46:18] SEVERE:   at de.dytanic.cloudnet.lib.network.NetworkConnection.tryConnect(NetworkConnection.java:210)
[23.02.2020 11:46:18] SEVERE:   at de.dytanic.cloudnet.lib.network.NetworkConnection.tryConnect(NetworkConnection.java:188)
[23.02.2020 11:46:18] SEVERE:   at de.dytanic.cloudnetwrapper.CloudNetWrapper.onShutdownCentral(CloudNetWrapper.java:136)
[23.02.2020 11:46:18] SEVERE:   at de.dytanic.cloudnetwrapper.CloudNetWrapper.lambda$new$0(CloudNetWrapper.java:82)
[23.02.2020 11:46:18] SEVERE:   at de.dytanic.cloudnet.lib.network.NetDispatcher.channelInactive(NetDispatcher.java:35)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:260)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:246)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:239)
[23.02.2020 11:46:18] SEVERE:   at io.netty.handler.codec.ByteToMessageDecoder.channelInputClosed(ByteToMessageDecoder.java:386)
[23.02.2020 11:46:18] SEVERE:   at io.netty.handler.codec.ByteToMessageDecoder.channelInactive(ByteToMessageDecoder.java:351)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:260)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:246)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:239)
[23.02.2020 11:46:18] SEVERE:   at io.netty.handler.codec.ByteToMessageDecoder.channelInputClosed(ByteToMessageDecoder.java:386)
[23.02.2020 11:46:18] SEVERE:   at io.netty.handler.codec.ByteToMessageDecoder.channelInactive(ByteToMessageDecoder.java:351)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:260)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:246)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.AbstractChannelHandlerContext.fireChannelInactive(AbstractChannelHandlerContext.java:239)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.DefaultChannelPipeline$HeadContext.channelInactive(DefaultChannelPipeline.java:1405)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:260)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.AbstractChannelHandlerContext.invokeChannelInactive(AbstractChannelHandlerContext.java:246)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.DefaultChannelPipeline.fireChannelInactive(DefaultChannelPipeline.java:901)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.AbstractChannel$AbstractUnsafe$8.run(AbstractChannel.java:818)
[23.02.2020 11:46:18] SEVERE:   at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
[23.02.2020 11:46:18] SEVERE:   at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
[23.02.2020 11:46:18] SEVERE:   at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:497)
[23.02.2020 11:46:18] SEVERE:   at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
[23.02.2020 11:46:18] SEVERE:   at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
[23.02.2020 11:46:18] SEVERE:   at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
[23.02.2020 11:46:18] SEVERE:   at java.base/java.lang.Thread.run(Thread.java:834)

Bug

[13:26:34/root] SEVERE: Jul 15, 2018 1:26:34 PM io.netty.channel.DefaultChannelPipeline onUnhandledInboundException
WARNING: An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.
java.lang.NullPointerException
at de.dytanic.cloudnet.lib.utility.document.Document.getDocument(Document.java:245)
at de.dytanic.cloudnetcore.signs.database.SignDatabase.loadAll(SignDatabase.java:55)
at de.dytanic.cloudnetcore.signs.SignsModule$ListenerImpl.onCall(SignsModule.java:74)
at de.dytanic.cloudnetcore.signs.SignsModule$ListenerImpl.onCall(SignsModule.java:67)
at de.dytanic.cloudnet.event.EventManager.callEvent(EventManager.java:87)
at de.dytanic.cloudnetcore.network.CloudNetClient.(CloudNetClient.java:68)
at de.dytanic.cloudnetcore.network.packet.in.PacketInAuthHandler.handleAuth(PacketInAuthHandler.java:81)
at de.dytanic.cloudnet.lib.network.auth.packetio.PacketInAuthReader.handleInput(PacketInAuthReader.java:19)
at de.dytanic.cloudnet.lib.network.protocol.packet.PacketManager$2.run(PacketManager.java:130)
at de.dytanic.cloudnet.lib.network.protocol.packet.PacketManager$2.run(PacketManager.java:123)
at de.dytanic.cloudnet.lib.utility.CollectionWrapper.iterator(CollectionWrapper.java:58)
at de.dytanic.cloudnet.lib.network.protocol.packet.PacketManager.dispatchPacket(PacketManager.java:123)
at de.dytanic.cloudnetcore.network.CloudNetClientAuth.channelRead0(CloudNetClientAuth.java:92)
at de.dytanic.cloudnetcore.network.CloudNetClientAuth.channelRead0(CloudNetClientAuth.java:23)
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:310)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:284)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1434)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:965)
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:808)
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:408)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:308)
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.lang.Thread.run(Thread.java:748)

LocalWrapper deletion possible

I think the local wrapper shouldn't be able to be deleted using "delete wrapper NAME", this causes problems like this https://pastes.gq/vAlpyAEgC9 when you restart the local wrapper.

To reproduce this, just start the Master using the localwrapper start file and then delete the wrapper by typing "delete wrapper Wrapper-1" in the console, now restart the master and you should see the errors from above.

Could not sign Book

When i Click sign on a book an i had entred the book title. The Book close and its not signed.

Add more error handling

Some places in the cloud need more error tolerance.

Examples:

  • loading of modules (ModuleDetector)
  • loading the configuration

And more things, primarily in the master and the bridge.

Fix setup flow from master to create server groups

On setup flow for server groups on the master is something wrong. If in console typed on the backend question, "MASTER". Only the Global-template get the master backend property, but not the default template

"cloudserver" command only available on lobbies

The cloudserver command (bukkit) is only registered on servers with the group mode "LOBBY" or "STATIC_LOBBY", which was fine before 2.1.15, because there were only features that are available on lobbies, but now, there is also "/cloudserver debug", which should be available on every server. This command should be registered on every server and not only on lobbies.

Fix Tab Color in SimpleNameTags

Seit MC Version 1.13.2 muss dem Team noch die color gesetzt werden, ansonsten wird der name in der Tablist weiß angezeigt.

[DepShield] (CVSS 5.9) Vulnerability due to usage of com.google.guava:guava:17.0

Vulnerabilities

DepShield reports that this application's usage of com.google.guava:guava:17.0 results in the following vulnerability(s):


Occurrences

com.google.guava:guava:17.0 is a transitive dependency introduced by the following direct dependency(s):

org.spigotmc:spigot-api:1.8.8-R0.1-SNAPSHOT
        └─ com.google.guava:guava:17.0

org.spigotmc:spigot-api:1.8.8-R0.1-SNAPSHOT
        └─ com.google.guava:guava:17.0

org.spigotmc:spigot-api:1.8.8-R0.1-SNAPSHOT
        └─ com.google.guava:guava:17.0

org.spigotmc:spigot-api:1.8.8-R0.1-SNAPSHOT
        └─ com.google.guava:guava:17.0

org.spigotmc:spigot-api:1.8.8-R0.1-SNAPSHOT
        └─ com.google.guava:guava:17.0

org.spigotmc:spigot-api:1.8.8-R0.1-SNAPSHOT
        └─ com.google.guava:guava:17.0

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

CloudNet 3.0

Ich möchte das MOTD eines Services ändern aber wenn ich es Speichere kommt auf dem MOTD ein komisches A mit ner Line oben drauf kann wer Helfen?

Gson date serialization is locale-specific

Gson serializes and deserializes dates based on locale.
This can cause issues like the following stacktrace.

We should change the default settings in Gson but upgrading may require a custom type adapter.

com.google.gson.JsonSyntaxException: Jan 6, 2020, 9:39:24 AM
	at com.google.gson.internal.bind.DateTypeAdapter.deserializeToDate(DateTypeAdapter.java:74) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	at com.google.gson.internal.bind.DateTypeAdapter.read(DateTypeAdapter.java:59) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	at com.google.gson.internal.bind.DateTypeAdapter.read(DateTypeAdapter.java:41) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	at com.google.gson.internal.bind.TypeAdapters$26$1.read(TypeAdapters.java:598) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	at com.google.gson.internal.bind.TypeAdapters$26$1.read(TypeAdapters.java:596) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:129) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:220) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	at com.google.gson.Gson.fromJson(Gson.java:887) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	at com.google.gson.Gson.fromJson(Gson.java:952) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	at de.dytanic.cloudnet.lib.utility.document.Document.getObject(Document.java:423) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.api.network.packet.in.PacketInLogoutPlayer.handleInput(PacketInLogoutPlayer.java:25) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.network.protocol.packet.PacketManager$2.run(PacketManager.java:99) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.network.protocol.packet.PacketManager$2.run(PacketManager.java:92) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.utility.CollectionWrapper.iterator(CollectionWrapper.java:61) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.network.protocol.packet.PacketManager.dispatchPacket(PacketManager.java:92) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.network.NetDispatcher$1.run(NetDispatcher.java:66) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.scheduler.TaskScheduler$VoidTaskEntry$1.call(TaskScheduler.java:585) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.scheduler.TaskScheduler$VoidTaskEntry$1.call(TaskScheduler.java:579) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.scheduler.TaskEntry.invoke(TaskEntry.java:33) ~[CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.scheduler.TaskScheduler$Worker.execute(TaskScheduler.java:527) [CloudNetAPI.jar:2.1.17]
	at de.dytanic.cloudnet.lib.scheduler.TaskScheduler$Worker.run(TaskScheduler.java:490) [CloudNetAPI.jar:2.1.17]
Caused by: java.text.ParseException: Failed to parse date ["Jan 6, 2020, 9:39:24 AM']: Invalid number: Jan 
	at com.google.gson.internal.bind.util.ISO8601Utils.parse(ISO8601Utils.java:274) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	at com.google.gson.internal.bind.DateTypeAdapter.deserializeToDate(DateTypeAdapter.java:72) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	... 20 more
Caused by: java.lang.NumberFormatException: Invalid number: Jan 
	at com.google.gson.internal.bind.util.ISO8601Utils.parseInt(ISO8601Utils.java:311) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	at com.google.gson.internal.bind.util.ISO8601Utils.parse(ISO8601Utils.java:129) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	at com.google.gson.internal.bind.DateTypeAdapter.deserializeToDate(DateTypeAdapter.java:72) ~[spigot.jar:git-Spigot-1a3504a-84f3da3]
	... 20 more

Update prefix and suffix cutting

Even though the documentation about strings is not detailed about the extend to which they are checked, the Minecraft Forge decompiled client reveals the details.

Both, prefix and suffix are read and checked when the packet is received. This explains the immediate crash when receiving the team information.
The same is also true for the display name and name itself, which should be obvious.

Here is the extract of code:

public String readString(int maxLength)
{
    int i = this.readVarInt();

    if (i > maxLength * 4)
    {
        throw new DecoderException("The received encoded string buffer length is longer than maximum allowed (" + $
    }
    else if (i < 0)
    {
        throw new DecoderException("The received encoded string buffer length is less than zero! Weird string!");
    }
    else
    {
        String s = this.toString(this.readerIndex(), i, StandardCharsets.UTF_8);
        this.readerIndex(this.readerIndex() + i);

        if (s.length() > maxLength)
        {
            throw new DecoderException("The received string length is longer than maximum allowed (" + i + " > " +$
        }
        else
        {
            return s;
        }
    }
}

As you can see, the maximum size in bytes is string length x 4 (64 for name, prefix and suffix, 128 for display name).

We should change that accordingly.

Add stacktrace handling to file or stream

Following lines are a example to use a stream to convert error into string

StringWriter writer = new StringWriter();
e.printStackTrace(new PrintWriter(writer));
String stackTrace = writer.toString();

With this lines can we save errors from Spigot or something to Github,Paste or else

FindBugs and CheckStyle support for clarity

Add some CheckStyle and FindBugs in pom and add the modul for Travis, Jenkins and Actions for result

             <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>findbugs-maven-plugin</artifactId>
                <version>3.0.5</version>
                <configuration>
                    <!--
                        Enables analysis which takes more memory but finds more bugs.
                        If you run out of memory, changes the value of the effort element
                        to 'Low'.
                    -->
                    <effort>Max</effort>
                    <!-- Build doesn't fail if problems are found -->
                    <failOnError>false</failOnError>
                    <!-- Reports all bugs (other values are medium and max) -->
                    <threshold>Low</threshold>
                    <!-- Produces XML report -->
                    <xmlOutput>true</xmlOutput>
                    <!-- Configures the directory in which the XML report is created -->
                    <findbugsXmlOutputDirectory>${project.build.directory}/findbugs</findbugsXmlOutputDirectory>
                </configuration>
                <executions>
                    <!--
                        Ensures that FindBugs inspects source code when project is compiled.
                    -->
                    <execution>
                        <id>analyze-compile</id>
                        <phase>package</phase>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
                <version>3.1.0</version>
                <dependencies>
                    <dependency>
                        <groupId>com.puppycrawl.tools</groupId>
                        <artifactId>checkstyle</artifactId>
                        <version>8.21</version>
                    </dependency>
                </dependencies>
                <configuration>
                    <configLocation>sun_checks.xml</configLocation>
                    <encoding>UTF-8</encoding>
                    <consoleOutput>false</consoleOutput>
                    <failsOnError>false</failsOnError>
                    <failOnViolation>false</failOnViolation>
                    <linkXRef>false</linkXRef>
                </configuration>
                <executions>
                    <execution>
                        <id>validate</id>
                        <phase>validate</phase>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

This is a example configuration :D

Fix PermissionIssue on Bukkit

To fix the issue that PlotSquared's "plots.plot.X" permission does not work finally that it also works with permissions given by a PermissionGroup and not only the permissions which are given to the player directly and that Player#getEffectivePermissions returns all permissions of the player and its groups, we should use all permissions of the player its groups in CloudPermissible#getEffectivePermissions.

Resolve compile warnings

Some methods and classes have been deprecated for a long time.
We should remove those methods and not implement them anymore.

This also helps resolving warnings in the build process.

This issue should be closed, once all warnings have been resolved and no usages of deprecated methods remain.

Problem mit Drittanbieter-Permissionsystem

Hey @Dytanic ,

erstmal: Respekt! Echt super gutes System.

Ich würde gerne LuckPerms auf meinen Servern anstelle von CPerms verwenden, da dies einige Features hat, die ich benötige.
Ist dies einfach möglich?

Ich habe es nämlich mal testweise in allen Templates, die ich hab mit eingefügt. Ich habe der Gruppe Administrator luckperms.* Permissions gegeben und mich per Konsole zu dieser Gruppe hinzugefügt.
Jedoch kann ich nicht auf die Befehle von LuckPerms zugreifen. Dasselbe gilt für allte /cloudserver Befehle. Für diese habe ich die Permission cloudnet.* gesetzt.

Liegt das am CloudNet System oder habe ich einfach etwas falsch gemacht?

~ lusu007

Fehler beim erstellen eines CloudNet V2 servers

Hey Leute,

Ich bin dabei einen CloudNet-V2 Server zu erstellen. Jedoch komme ich bei dem Schritt wo die spigot.jar downloadet nicht weiter, denn es kommt dieser Fehler.


Fehler:

[22.04.2019 13:07:01] INFO: Choose a minecraft server version ["paper" (coming soon), "spigot"]
spigot
[22.04.2019 13:07:15] INFO: Choose a Spigot version ["1.7.10", "1.8.8", "1.9.4", "1.10.2", "1.11.2", "1.12.2", "1.13", "1.13.1", "1.13.2"]
1.8.8
[22.04.2019 13:07:18] INFO: Downloading spigot.jar...
[22.04.2019 13:07:20] SEVERE: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:302)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:296)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1509)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.Handshaker.process_record(Handshaker.java:914)
[22.04.2019 13:07:20] INFO: Trying to connect ###.###.###.##:1410
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)
[22.04.2019 13:07:20] SEVERE: at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:559)
[22.04.2019 13:07:20] SEVERE: at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)
[22.04.2019 13:07:20] SEVERE: at sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:153)
[22.04.2019 13:07:20] SEVERE: at de.dytanic.cloudnetwrapper.setup.SetupSpigotVersion$1.run(SetupSpigotVersion.java:33)
[22.04.2019 13:07:20] SEVERE: at de.dytanic.cloudnetwrapper.setup.SetupSpigotVersion$1.run(SetupSpigotVersion.java:24)
[22.04.2019 13:07:20] SEVERE: at de.dytanic.cloudnetwrapper.setup.SetupSpigotVersion.run(SetupSpigotVersion.java:104)
[22.04.2019 13:07:20] SEVERE: at de.dytanic.cloudnetwrapper.CloudNetWrapper.bootstrap(CloudNetWrapper.java:129)
[22.04.2019 13:07:20] SEVERE: at de.dytanic.cloudnetwrapper.bootstrap.CloudBootstrap.main(CloudBootstrap.java:99)
[22.04.2019 13:07:20] SEVERE: at de.dytanic.cloudnetwrapper.bootstrap.CloudNetLauncher.main(CloudNetLauncher.java:20)
[22.04.2019 13:07:20] SEVERE: Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
[22.04.2019 13:07:20] SEVERE: at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:387)
[22.04.2019 13:07:20] SEVERE: at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:292)
[22.04.2019 13:07:20] SEVERE: at sun.security.validator.Validator.validate(Validator.java:260)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:324)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:229)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:124)
[22.04.2019 13:07:20] SEVERE: at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1491)
[22.04.2019 13:07:20] SEVERE: ... 16 more
[22.04.2019 13:07:20] SEVERE: Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
[22.04.2019 13:07:20] SEVERE: at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:146)
[22.04.2019 13:07:20] SEVERE: at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:131)
[22.04.2019 13:07:20] SEVERE: at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280)
[22.04.2019 13:07:20] SEVERE: at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:382)
[22.04.2019 13:07:20] SEVERE: ... 22 more


Ich hoffe ihr könnt mir helfen.

MFG,
Pixel-01

PlotSquared compatibility

I wanted to report that with CloudNet the permission "plots.plot.1" which is very important for PlotSquared does not work.

LG
MagicallyTim

Cut prefixes that are longer than 16 bytes

In order to prevent issues when joining on a server, we should limit the prefixes to 16 bytes.

This should also include a warning message, that prefixes have been cut to prevent further issues.

Related code:
https://github.com/CloudNetService/CloudNet/blob/master/cloudnet-api/cloudnet-api-bridge/src/main/java/de/dytanic/cloudnet/bridge/CloudServer.java#L474-L475

team.setPrefix(ChatColor.translateAlternateColorCodes('&', permissionGroup.getPrefix()));
team.setSuffix(ChatColor.translateAlternateColorCodes('&', permissionGroup.getSuffix()));

Simply speaking: We notify the operator every time this happens.

Startscript

Im Startscript das beim Download dabei ist, --ssl entfernen.

Install Kommand

Den "Install" Kommand wieder hinzufügen

Der wurde damals entfernt, man konnte drüber Module Downloaden

Wäre jetzt nützlich um mein Webinterface besser zum Download zu stellen

Rework the scheduler and file utility

The scheduler is very weird and wastes resources.
The TaskScheduler is very weirdly set up and requires major rewriting.

This is very noticable with long lasting tasks like copying a large template.

https://github.com/CloudNetService/CloudNet/blob/development/cloudnet-lib/src/main/java/de/dytanic/cloudnet/lib/utility/threading/Scheduler.java

https://github.com/CloudNetService/CloudNet/blob/development/cloudnet-lib/src/main/java/de/dytanic/cloudnet/lib/scheduler/TaskScheduler.java

It would be best to simply replace this large class with a ScheduledExecutorService

While we are at it, we should also rewrite the FileUtility to use ready-made methods directly from Java: https://github.com/CloudNetService/CloudNet/blob/development/cloudnet-wrapper/src/main/java/de/dytanic/cloudnetwrapper/util/FileUtility.java.

Current progress:

  • FileUtility
  • TaskScheduler

Runtime Exception on PlayerExecutor

On the Server start is something wrong with the player executor
The Interface can't be instantiated!
Stacktrace:

[24.12.2019 13:49:18] INFO: [Lobby-1] java.lang.RuntimeException: Unable to invoke no-args constructor for interface de.dytanic.cloudnet.lib.player.PlayerExecutor. Register an InstanceCreator with Gson for this type may fix this problem.
[24.12.2019 13:49:18] INFO: [Lobby-1]   at com.google.gson.internal.ConstructorConstructor$14.construct(ConstructorConstructor.java:226) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:210) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:129) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:220) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at com.google.gson.Gson.fromJson(Gson.java:887) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at com.google.gson.Gson.fromJson(Gson.java:952) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at de.dytanic.cloudnet.lib.utility.document.Document.getObject(Document.java:360) ~[?:?]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at de.dytanic.cloudnet.api.CloudAPI.getOnlinePlayer(CloudAPI.java:1415) ~[?:?]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at de.dytanic.cloudnet.bridge.internal.listener.bukkit.BukkitListener.handle0(BukkitListener.java:58) ~[?:?]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor1.execute(Unknown Source) ~[?:?]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:76) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:545) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at net.minecraft.server.v1_14_R1.LoginListener$LoginHandler.fireEvents(LoginListener.java:311) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at net.minecraft.server.v1_14_R1.LoginListener$1.run(LoginListener.java:212) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:1.8.0_202]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_202]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at java.lang.Thread.run(Unknown Source) [?:1.8.0_202]
[24.12.2019 13:49:18] INFO: [Lobby-1] Caused by: java.lang.UnsupportedOperationException: Interface can't be instantiated! Interface name: de.dytanic.cloudnet.lib.player.PlayerExecutor
[24.12.2019 13:49:18] INFO: [Lobby-1]   at com.google.gson.internal.UnsafeAllocator.assertInstantiable(UnsafeAllocator.java:117) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at com.google.gson.internal.UnsafeAllocator.access$000(UnsafeAllocator.java:31) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at com.google.gson.internal.UnsafeAllocator$1.newInstance(UnsafeAllocator.java:49) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   at com.google.gson.internal.ConstructorConstructor$14.construct(ConstructorConstructor.java:223) ~[spigot.jar:git-Paper-237]
[24.12.2019 13:49:18] INFO: [Lobby-1]   ... 18 more

Resolve warnings about OSSignalBlocker

Is the OSSignalBlocker class actually used?
And does it serve any real purpose?

If not, we should remove it as it is currently using proprietary APIs (sun.misc package).

Add a milestone for 2.2.0 version

Add a milestone for the 2.2.0
Some things that would need a revision and improvements for the 2.2.0+:

  • Rework database backend to fix Out of Memory bug -> #189
  • GameServer class, split big content methods into smaller -> #191
  • Change some class uses from tarek-functional into java functional
  • Change use from CollectionWrapper, into lambadas/stream api
  • Change use from MapWrapper, into lambadas/stream api
  • Remove some Trio, Quad, Return, Catcher and Acceptable classes and replace it with entity/model classes and rightful code
  • Remove and replace the Document class with JsonElement/JsonObject*
  • Add some more Statistics*

* this is optional

Some more tasks coming in the future

Finished and in progress tasks in the Project/Milestone and under this issue

Cloudnet 2 findet spigot nicht

Guten Tag

ich habe das Problem das Cloudnet 2.0 die Spigot nicht findet wenn ich sie beim server starten aus wähle ich bitte um Hilfe

log
[22.04.2019 04:21:12] INFO: Choose a Spigot version ["1.7.10", "1.8.8", "1.9.4", "1.10.2", "1.11.2", "1.12.2", "1.13", "1.13.1"]
1.8.8
[22.04.2019 04:21:17] INFO: Downloading spigot.jar...
[22.04.2019 04:21:18] SEVERE: java.io.FileNotFoundException: https://yivesmirror.com/files/spigot/spigot-1.8.8-R0.1-SNAPSHOT-latest.jar
[22.04.2019 04:21:18] SEVERE: at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1890)
[22.04.2019 04:21:18] SEVERE: at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492)
[22.04.2019 04:21:18] SEVERE: at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:263)
[22.04.2019 04:21:18] SEVERE: at de.dytanic.cloudnetwrapper.setup.SetupSpigotVersion$1.run(SetupSpigotVersion.java:34)
[22.04.2019 04:21:18] SEVERE: at de.dytanic.cloudnetwrapper.setup.SetupSpigotVersion$1.run(SetupSpigotVersion.java:24)
[22.04.2019 04:21:18] SEVERE: at de.dytanic.cloudnetwrapper.setup.SetupSpigotVersion.run(SetupSpigotVersion.java:136)
[22.04.2019 04:21:18] SEVERE: at de.dytanic.cloudnetwrapper.CloudNetWrapper.bootstrap(CloudNetWrapper.java:130)
[22.04.2019 04:21:18] SEVERE: at de.dytanic.cloudnetwrapper.bootstrap.CloudBootstrap.main(CloudBootstrap.java:99)
[22.04.2019 04:21:18] SEVERE: at de.dytanic.cloudnetwrapper.bootstrap.CloudNetLauncher.main(CloudNetLauncher.java:20)

Users.json Permission Update

Wenn man Perms in der users.json bei einen User einstellt, dass die bei "rl all" geupdatet werden und nicht nur beim restart.

Verbinden zum Server

Hallo,
da ich einen Minecraft Server besitze, dachte ich mir, das kann ich gebrauchen, da die Unterserver ständig verwaltet werden mussten und ständig abstürzten.
Cloudnet ließ sich installieren, aber als ich den Server betreten wollte zeigte mir Minecraft an, das der Server offline wäre. Ich habe schon den normalen Minecraft Port ,,25565'' ausprobiert sowie über die Zahlen Ip. Geht leider auch nicht.

Mfg

Add some pullrequest template

Add for the legibility a template for pull-requests.
The layout is good to have a better overview for the changes

Add debug output

To aid in support and fixing possible issues, some functions, such as the permissions system should be configurable to print out more verbose information, such as the checked permissions.

Cleanup and rework the GameServer class

Class
Main problem of this class is the big content methods. Split some methods in to max 25 line numbers of code content. To improve the legibility!

Some more information get it form @MeinerLP1 and @GiantTreeLP about the issue

This issue if for project "code quality"

ZipExcpetion on /cloud copy command

java.util.zip.ZipException: error in opening zip file
        at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.<init>(ZipFile.java:230)
        at java.util.zip.ZipFile.<init>(ZipFile.java:160)
        at java.util.zip.ZipFile.<init>(ZipFile.java:174)
        at de.dytanic.cloudnetcore.web.api.v1.WebsiteDeployment.post(WebsiteDeployment.java:88)
        at de.dytanic.cloudnet.web.server.handler.MethodWebHandler.handleRequest(MethodWebHandler.java:56)
        at de.dytanic.cloudnet.web.server.WebServerHandler.channelRead(WebServerHandler.java:78)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
        at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:438)
        at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:328)
        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:302)
        at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:253)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
        at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1421)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:930)
        at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
        at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:697)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:632)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:549)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:511)
        at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:918)
        at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
        at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
        at java.lang.Thread.run(Thread.java:748)


On the /cloud copy command is some error on the master

Standard Bukkit-BroadcastMessage ghet NICHT+ Essentials Join message geht nicht?

Mit dem neuen Update funktioniert einfach ausm nichts, ohne nderungen auf meiner seite/ meinen plugins
der Broadcaster für mein BW system nichtmehr. Also ich sehe die NAchrhten nichtmehr im chat, in der Konsole Jedoch schon. Dasselbe bei Essentials X.

Bedwars Server Plugins:
Mein BW (Grundgerüst von Davecrafter, teilst modifiziert wie z.b. Bei ende stop, statt rl) <- Bukkit.broadcastMessage geht nicht
Essentials system von mir (Gems, help, sowas halt.) <- FUNZT GANZ

Mehr ist dort nicht drauf.
Beispiel Source, wo es nicht geht: https://hastebin.com/axipejujen.java (beispielhaft Zeile 56) Imports sind nur PaperSpigot 1.8.8+die CloudNetAPI (Aktuellste aus CN)

Essentials Problem Server Plugins:
http://prntscr.com/kb1ikr

Essentials config:
https://hastebin.com/nahibawapi.coffeescript

Wichtig zu sagen ist:
Beide Probleme sind NICHT da, wenn ich eine ältere Version von Cloudnet, einen Einzelnden MC server, oder einen localhost Server verwernde, was zu 99% sagt, es muss an der Cloud liegen.

library relocator

Use library relocator bcs of the dancer that other plugins uses old versions from like gson.

Wrapper Control+C Issue

Description:
The Wrapper does not stops on STRG+C input. Only the Command Line freeze up and do nothing more. I don't know what do the Wrapper in Background.

CloudNet Version: `2.2.0*
Java Version:

openjdk version "11.0.6" 2020-01-14 LTS
OpenJDK Runtime Environment Zulu11.37+17-CA (build 11.0.6+10-LTS)
OpenJDK 64-Bit Server VM Zulu11.37+17-CA (build 11.0.6+10-LTS, mixed mode)

System Info:

Hostname:                                      XXXX-HP-LT
Betriebssystemname:                            Microsoft Windows 10 Pro
Betriebssystemversion:                         10.0.18363 Nicht zutreffend Build 18363
Betriebssystemhersteller:                      Microsoft Corporation
Betriebssystemkonfiguration:                   Mitglied der Domäne/Arbeitsgruppe
Betriebssystem-Buildtyp:                       Multiprocessor Free
Registrierter Benutzer:                        meinerlp
Registrierte Organisation:                     Nicht zutreffend
Produkt-ID:                                    00330-50000-00000-AAOEM
Ursprüngliches Installationsdatum:             05.01.2020, 14:17:22
Systemstartzeit:                               23.02.2020, 08:40:05
Systemhersteller:                              HP
Systemmodell:                                  HP EliteBook 830 G5
Systemtyp:                                     x64-based PC
Prozessor(en):                                 1 Prozessor(en) installiert.
                                               [01]: Intel64 Family 6 Model 142 Stepping 10 GenuineIntel ~1792 MHz
BIOS-Version:                                  HP Q78 Ver. 01.08.01, 18.07.2019
Windows-Verzeichnis:                           C:\Windows
System-Verzeichnis:                            C:\Windows\system32
Startgerät:                                    \Device\HarddiskVolume1
Systemgebietsschema:                           de;Deutsch (Deutschland)
Eingabegebietsschema:                          de;Deutsch (Deutschland)
Zeitzone:                                      (UTC-05:00) Eastern Zeit (USA & Kanada)
Gesamter physischer Speicher:                  32.611 MB
Verfügbarer physischer Speicher:               22.696 MB
Virtueller Arbeitsspeicher: Maximale Größe:    37.475 MB
Virtueller Arbeitsspeicher: Verfügbar:         26.732 MB
Virtueller Arbeitsspeicher: Zurzeit verwendet: 10.743 MB
Auslagerungsdateipfad(e):                      C:\pagefile.sys
Domäne:                                        XXXX.XXXX
Anmeldeserver:                                 \\XXXX
Hotfix(es):                                    9 Hotfix(e) installiert.
                                               [01]: KB4534132
                                               [02]: KB4497727
                                               [03]: KB4516115
                                               [04]: KB4517245
                                               [05]: KB4524569
                                               [06]: KB4528759
                                               [07]: KB4537759
                                               [08]: KB4538674
                                               [09]: KB4532693
Anforderungen für Hyper-V:                     Erweiterungen für den VM-Überwachungsmodus: Ja
                                               Virtualisierung in Firmware aktiviert: Ja
                                               Adressübersetzung der zweiten Ebene: Ja
                                               Datenausführungsverhinderung verfügbar: Ja

Stacktrace:

Nothing

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.