• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

BungeeCord und Spigot zusammen

SyntaxWolf

Redstoneengineer
Registriert
26 Oktober 2017
Beiträge
46
Diamanten
250
Guten Tag,

ich wollte mich kurz umhören, ob es möglich ist ein BungeeCord-Plugin in einem Spigot-Plugin zu verpacken. Das heißt man hat eine "plugin.yml" und "bungee.yml" und ein Package für BungeeCord und eins für Spigot/Bukkit währe es dann möglich? Ich hoffe ihr habt mich verstanden, weil ich nicht der beste im erklären bin.

Mit freundlichen Grüßen
SyntaxWolf
 

Baba43

Ehem. Teammitglied
Ehem. Teammitglied
Registriert
5 November 2012
Beiträge
869
Diamanten
60
Minecraft
baba43
Nein, das ist nicht möglich und auch nicht sinnvoll. Zum einen, weil sich die Konfigurationen unterscheiden und zum anderen, weil es dann zu Konflikten kommt. Hast du zum Beispiel Abhängigkeiten auf Spigot-Ebene, gibst diese aber in der Konfiguration für Bungee an, wird das Plugin nicht starten, weil es die Abhängigkeiten nicht findet.

Wenn es darum geht, dass du ein Plugin entwickeln möchtest, dass sowohl einen Spigot-, als auch einen Bungeecoord-Teil hat (oder ein Plugin, das für beide Plattformen verfügbar sein soll), kannst du z. B. mit Gradle ein s. g. Multi-Project anlegen, das aus drei Modulen besteht: Core, Spigot und Bungee. Damit hast du am Ende ein Projekt, zwei Ausgaben (eine jar für Spigot und eine für Bungee) und kannst Code über das Core-Modul teilen.

Wie genau das geht, wird im Internet an verschiedenen Stellen erklärt.
 

BloodSKreaper

Vorarbeiter
Registriert
12 Oktober 2014
Beiträge
249
Diamanten
316
Minecraft
BloodSKreaper
Guten Tag,

Ja es ist möglich, dass du sowohl ein Bukkit-Plugin als auch ein Bungeecord-Plugin in derselben jar-Datei hast.
Bsp: https://github.com/DevLeoko/AdvancedBan
Allerdings musst du dann darauf achten, dass du nicht die API der jeweils anderen Software verwendest (bei Spigot nicht Bungeecord und vice versa)

Freundliche Grüße
BloodSKreaper
 

BlackHole

Workaholic
Registriert
1 Juli 2012
Beiträge
752
Diamanten
0
Minecraft
BlackHole
Um zu vermeiden, dass man API benutzt, die auf einem System nicht vorhanden ist, kann man z.B. mit Maven mehrere Projekte machen.
Zum einen benötigt man ein Root-Projekt, ein Projekt für den gemeinsamen Teil, ein Projekt für Spigot, ein Projekt für BungeeCord und eines um die Projekte zu einer JAR-Datei zusammen zu fassen.
Als Problem verbleibt dann das Shaden von Bibliotheken, die nur im Spigot oder nur in BungeeCord enthalten sind. Dieses kann dann zu Problemen führen, wenn man das Plugin zusammen mit anderen Plugins einsetzt, die dann Klassen der Bibliothek von verschiedenen Versionen zusammen würfelt. Um das zu vermeiden könnte man dann beim Shaden auf Relocation zurückgreifen.
 

KillawOrCarel

Kuhfänger
Registriert
15 Juli 2017
Beiträge
78
Diamanten
1
Die hier gewünschte Funktion wurde übrigens schon vor vier Jahren diskutiert (Siehe #841).

Achso, weil dir die Antwort nicht gefällt, ist sie also fasch ja?
Die Antwort ist nicht nur subjektiv "falsch", sondern einfach Objektiv falsch. Zwar ist es korrekt, dass transitive Abhängigkeiten Probleme bereiten
können, jedoch ist das für die hier gestellte Frage irrelevant. Es gibt viele Einsatzmöglichkeiten wo diese Form der Paketierung Sinn ergeben könnte, z.B. bei Bibliotheken für Datenbanken.
 
Oben