Hier erstellen wir ein Spigot-Plug-In in Java. Da es für Java-Anfänger ist, werden wir aus den Grundkenntnissen von Java erklären. Wenn Sie zuvor Java verwendet haben, überspringen Sie es bitte entsprechend. Außerdem verwenden wir hier JDK8, die derzeit empfohlene Umgebung für Minecraft.
[] JDK8: hier Bitte installieren Sie das für Ihr Betriebssystem geeignete.
[] IntelliJ IDEA: Here Bitte installieren Sie die für Ihr Betriebssystem geeignete. Die Community-Version ist in Ordnung (Ultimate wird berechnet).
Vorsicht JDK8: Ein Entwicklungskit für eine Programmiersprache namens Java, die Minecraft erstellt. Dieses Mal werde ich Version 8 verwenden. IntelliJ IDEA: Eine Software namens Comprehensive Development Environment (IDE) zum Schreiben von Programmen. (Im Folgenden IDEE) Es gibt andere Dinge wie Eclipse und NetBeans, aber da der Autor IDEA verwendet, werden wir in diesem Kurs auch IDEA verwenden. Informationen zur japanischen Lokalisierung finden Sie unter hier usw. Da die Umgebung des Autors ins Japanische übersetzt ist, werden Menüpunkte usw. mit japanischen Namen erklärt. Der Autor ist eine Windows-Umgebung. Sie sollten in der Lage sein, das gleiche Verfahren auf einem Mac auszuführen, aber die Details sind unbekannt. Überprüfen Sie dies daher selbst.
Wenn Sie IDEA starten, wird der folgende Bildschirm angezeigt (Sie werden gefragt, ob Sie die Einstellungen beim ersten Start importieren möchten, aber "Nicht importieren" unter den Optionen ist in Ordnung.) Drücken Sie "Plug-in" unter "Konfiguration" des Zahnrads unten rechts. Ein Eingabefeld wird angezeigt, suchen Sie also nach "minecraft". Hier installieren Sie bitte "Minecraft Development", das oben links angezeigt wird. Nach der Installation werden Sie aufgefordert, IDEA neu zu starten. Starten Sie es daher neu.
Wenn Sie es nicht sehen, versuchen Sie "Suche aus dem Repository". Die hier installierte Minecraft-Entwicklung ist eine Erweiterung von IDEA, mit der Sie Vorlagen wie das Spigot-Plug-In erstellen können.
Jetzt ist es Zeit, das Programm zu schreiben.
Klicken Sie auf Neues Projekt erstellen.
Wenn das "Project SDK" oben keines ist, wählen Sie den Ordner "java_home" unter "Neu" aus.
(Für Windows C: \ Programme \ Java \ jdk1.8.0_181
usw.)
Wenn Minecraft Development erfolgreich installiert wurde, sollte in der Liste links ein Element namens "Minecraft" angezeigt werden. Klicken Sie darauf.
Überprüfen Sie von hier aus das Spigot Plugin und klicken Sie auf Weiter.
Legen Sie auf diesem Bildschirm den Build fest.
Die Gruppen-ID gibt die Gruppe an, zu der das Plug-In gehört. Gruppen können nach Autor, Funktion usw. unterteilt werden, aber alles ist in Ordnung, solange Sie sich nicht mit anderen Personen überschneiden. Hier ist es com.github.rona_tombo aus der umgekehrten Reihenfolge des GitHub-Domainnamens des Autors. Die einzigen Zeichen, die als Notiz verwendet werden können, sind alphanumerische Zeichen halber Breite, Punkt "." Und Unterstrich "_".
Die Artefakt-ID ist die ID, die das Projekt auszeichnet. Normalerweise ist es in Ordnung, den Plug-In-Namen zu verwenden.
Alles wird gut Gradle Das Auswahlmenü unten rechts wurde vom Standard-Maven in Gradle geändert. Ich kann in beiden Fällen Plug-Ins erstellen, aber das ist mein Hobby.
Unterschied zwischen Maven und Gradle Bei beiden handelt es sich um Tools zur Auflösung von Abhängigkeiten, mit denen Sie die Version eines Programms verwalten können, das von einer anderen Person erstellt wurde. Der Autor ist nicht gut darin, Maven mit XML einzustellen, was für Menschen schwer zu lesen ist. Es gibt viele Dinge, die Gradle tun kann.
Spigot Settings Hier setzen wir den Stecker selbst. Plugin Name Legen Sie den Namen des Plug-Ins fest. Es können nur alphanumerische Zeichen halber Breite verwendet werden.
Alles wird gut Main Class Name Geben Sie die Hauptklasse (später beschrieben) des Plug-Ins an. Wenn Sie es nicht wissen, können Sie die Standardeinstellungen beibehalten. Minecraft Version Geben Sie die Zielversion von Minecraft an. Die aktuellste Version ist 1.13.2, aber ich habe immer noch das Gefühl, dass sie instabil ist. Deshalb werde ich sie hier mit 1.12.2 entwickeln.
Optionale Einstellung Das Folgende funktioniert ohne Einstellung, es ist jedoch besser, es beim Verteilen oder Veröffentlichen festzulegen.
Es ist buchstäblich eine Beschreibung des Plug-Ins. Es können nur alphanumerische Zeichen halber Breite verwendet werden.
Authors
Der Name des Autors. Wenn es mehr als eine gibt, trennen Sie diese durch Kommas mit halber Breite ,
.
WebSite
Geben Sie die URL an, unter der das Plug-In veröffentlicht wird.
LogPrefox
Geben Sie das Präfix an, das an den Anfang des Protokolls angehängt ist. Wenn leer, wird der Steckername verwendet.
Load Before
Geben Sie den Namen des Plug-Ins an. Dieses Plug-In wird vor dem hier angegebenen Plug-In geladen.
Wenn Sie mehr als eine angeben, trennen Sie diese durch Kommas mit halber Breite ,
.
Depend
Gibt das Plug-In an, von dem dieses Plug-In abhängt.
Das hier angegebene Plug-In wird vor diesem Plug-In geladen.
Wenn das hier angegebene Plug-In nicht installiert ist, tritt beim Start des Servers ein Fehler auf.
Soft Depend
Die Hauptfunktion ist dieselbe wie Abhängig.
Der Unterschied besteht jedoch darin, dass auch dann kein Fehler auftritt, wenn das hier angegebene Plug-In nicht installiert ist.
Load at
Wird eingestellt, wenn das Plug-In geladen wird.
Wenn alle Welten in Post World gelesen wurden
Dies ist der Zeitpunkt, an dem der Server beim Start gestartet wird (bevor die Welt gelesen wird).
Wenn Sie nur den Projektnamen festlegen, können Sie ihn unverändert lassen.
Wenn Sie hier auf Fertig stellen klicken, wird der folgende Bildschirm angezeigt.
Es ist in Ordnung so wie es ist.
Bitte warten Sie, hier können Sie von nun an das Programm schreiben. Tatsächlich hat Minecraft Develop bereits den minimal erforderlichen Code geschrieben, ohne den Code zu ändern. Mit anderen Worten ... ** Es funktioniert bereits als Plug ** (obwohl es ein Plug ist, der nichts tut, weil er natürlich keine Funktionen schreibt).
Lassen Sie uns nun die Grundlagen der Java-Grundlagen studieren.
Tutorial.java
package com.github.rona_tombo.tutorial;
Dies zeigt an, dass eine Klasse namens Tutorial (später beschrieben) zu einem Paket (einer Sammlung von Klassen) namens com.github.rona_tombo.tutorial gehört.
Tutorial.java
import org.bukkit.plugin.java.JavaPlugin;
Es ist eine Erklärung, dass wir die Klasse "org.bukkit.plugin.java.JavaPlugin" verwenden werden. Auf diese Weise wird der Paketname für den Import usw. verwendet.
Tutorial.java
public final class Tutorial extends JavaPlugin{
}
Dies ist die Klassendeklaration, die zuvor angezeigt wurde.
Eine Klasse ist eine Einheit der Grundfunktionalität von Java.
Klassen können Mitglieder wie Methoden (siehe unten) und Felder (siehe unten) haben.
Auf public
kann von überall zugegriffen werden, final ist eine Klasse, die nicht" geerbt "werden kann (später beschrieben), Tutorial ist ein Name und erweitert ist eine Klasse namens JavaPlugin.
Die Vererbung besteht darin, eine Klasse basierend auf einer bestimmten Klasse zu erstellen und die Funktion der Klasse hinzuzufügen oder neu zu schreiben. (Wenn Sie im Detail erklären, wird es Platz beanspruchen, also werde ich eine andere Gelegenheit nutzen)
Tutorial.java
@Override
public void onEnable(){
// Plugin startup logic
}
@Override
public void onDisable(){
// Plugin shutdown logic
}
Dies ist in der Tutorial-Klasse. Dies ist die Methode. Die Methode ist der Teil, der in der Klasse definiert ist und der die Verarbeitung tatsächlich ausführt. Diese beiden Methoden werden in JavaPlugin definiert, der Vererbungsquelle der Tutorial-Klasse. Die Verarbeitung wird jedoch durch Hinzufügen von "@ Override" neu geschrieben. public bedeutet, dass Sie es von überall aus verwenden können. void bedeutet, dass es nach Abschluss keine Ergebnisse mehr zurückgibt. () Wird am Ende jeder Methode angehängt, aber in einigen Fällen werden die zur Verarbeitung verwendeten Informationen hier als Argument übergeben.
Spielen wir also hier mit dem Code. Ändern Sie onEnable und onDisable wie folgt.
Tutorial.java
@Override
public void onEnable(){
// Plugin startup logic
getLogger().info("Das Plug-In ist aktiviert!");
}
@Override
public void onDisable(){
// Plugin shutdown logic
getLogger().info("Das Plug-In wurde deaktiviert!");
}
getLogger ist eine Methode zum Hinterlassen eines Protokolls auf der Konsole.
Gewöhnliche Methoden verwenden Instanzvariablen, die eine Klasse instanziieren (das ist leichter zu merken).
Instanzvariablenname.methodenname (Argument);
Die in Ihrer Klasse oder Ihrer übergeordneten Klasse definierten Methoden können jedoch ohne Instanziierung nur mit dem Methodennamen aufgerufen werden.
Der Rückgabewert der Methode (der nach der Verarbeitung zurückgegebene Wert) kann in eine Variable gepackt und von dort aus weitere Methoden verbunden werden.
Hier bleibt das Protokoll wie folgt: "Das Plug-In wurde aktiviert!" Beim Laden des Plug-Ins und "Das Plug-In wurde deaktiviert!" Beim Deaktivieren.
Wenn Sie dies tun können, lassen Sie es uns tatsächlich ausführen. Für Windows gibt es hier eine Sache zu tun. Doppelklicken Sie links im Baum auf "build.gradle", um es zu öffnen. Fügen Sie Folgendes unter "Zielkompatibilität" hinzu.
build.gradle
tasks.withType(AbstractCompile)*.options*.encoding = tasks.withType(GroovyCompile)*.groovyOptions*.encoding = 'UTF-8'
Wenn Sie können, klicken Sie auf das Dreieck oben rechts im Fenster.
Dadurch wird das Plug-In erstellt. Wenn die Meldung "BUILD SUCCESS FUL" angezeigt wird, ist der Build abgeschlossen. Wenn Sie die Standardeinstellung beibehalten, sollten Sie eine JAR-Datei mit dem Namen "Plugin name-version.jar" in "C: \ Benutzer \ Benutzername \ IDEA-Projekte \ Projektname \ build \ lib " haben, also 1.12 Versuchen Sie, Spigot im Ordner .2 Spigot-Plugins zu starten. Versuchen Sie auch, den Server mit / stop zu stoppen. Wenn das Protokoll auf der Konsole angezeigt wird, ist es erfolgreich.
Haben Sie die Grundkenntnisse von Java verstanden? Dieses Mal mache ich nur die sehr einfache Sache, das Protokoll auf der Konsole anzuzeigen, aber ab dem nächsten Mal werde ich auf Befehle reagieren, wenn ich einen Block drücke usw. Ich möchte verschiedene Dinge tun. Bis zum Ende Danke fürs Lesen. Wir freuen uns auf Ihre weitere Unterstützung in dieser Serie.
Recommended Posts