Maven einrichten
Füge den folgenden Block <project>
in deiner pom.xml
hinzu, um die SpongeAPI Abhängigkeit zu gewährleisten:
<repositories>
<repository>
<id>sponge</id>
<url>https://repo.spongepowered.org/maven</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.spongepowered</groupId>
<artifactId>spongeapi</artifactId>
<version>6.0.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
Das Archetype Plugin verwenden
Alternativ hat Sponge einen einfachen Archetyp, der die grundlegende Struktur für ein Plugin generiert.
Die generierten Pom enthält ein Release-Profil, welches eine GPP-signierte Jar für Javadocs, Binär- und Quellen, generiert - wie empfohlen in den Richtlinien für die Einsendung der Projekte zu Sonatype OSS (allerdings ist diese Option derzeit nicht verfügbar für Sponge-Plugins, da SpongeAPI derzeit nicht auf Maven Central gehostet wird).
Eigenschaften
Der Archetyp Plugin hat ein paar Eigenschaften:
Objekt |
Beispielwert |
Beschreibung |
---|---|---|
groupId |
io.github.user |
Die Maven GroupId, nützlich für Plugins, die als Abhängigkeiten verwendet werden, sollte aber mehr oder weniger Ihrem Paketnamen entsprechen |
artifactId |
myproject |
Die Projekt-Id wird auch als Plugin-Id und für den Namen des generierten Ordners verwendet |
version |
1.0-SNAPSHOT |
Die erste Version für dein Plugin. Kann (und sollte) geändert werden, wenn die Entwicklung voranschreitet |
package |
io.github.user.myproject |
Das Paket, in dem Ihre Plugin-Klasse generiert wird |
githubProject |
Benutzer/Repo |
Das GitHub Projekt. Wenn der angegebene Wert nicht benutzer/repo ist, werden die Problemverfolgungs- und SCM-Abschnitte der |
Diese können als Argumente für Maven in Form von -Dproperty = Wert
angegeben werden
Verwendung
Dieser Archetyp muss Maven 3 oder höher sein. Rufen Sie Maven mit dem Ziel archetyp:generate
auf. Maven erfragt nun alle erforderlichen Parameter. Optionale Parameter müssen in der Befehlszeile angegeben werden.
$ mvn archetype:generate -DarchetypeArtifactId=sponge-plugin-archetype -DarchetypeGroupId=org.spongepowered -DarchetypeRepository=https://repo.spongepowered.org/maven -DarchetypeVersion=1.2 -DgithubProject=waylon531/spongeparty
Die ersten vier Argumente legen fest wo Maven den archetype``findet und welche Version genutzt werden soll. Der ``
-DgithubProject=waylon531/spongeparty`` Parameter ist eine optionale Eigenschaft des erzeugten Projekts und kann weggelassen werden, wenn das Projekt nicht auf Github bereitgestellt werden soll.
Nachdem dein Projekt erstellt wurde, muss es in der IDE importieren werden. Siehe Den Arbeitsbereich einrichten für Details.