Jak utworzyć aplikację stacjonarną (samodzielną/Swingową) z Maven?Tworzenie samodzielnej aplikacji z Maven
Używam Eclipse 3.6.
Jak utworzyć aplikację stacjonarną (samodzielną/Swingową) z Maven?Tworzenie samodzielnej aplikacji z Maven
Używam Eclipse 3.6.
Utwórz projekt Maven następująco:
mvn archetype:generate -DgroupId=com.yourapp.app
-DartifactId=swingapp
-Dversion=1.0-SNAPSHOT
Dodaj następujący wpis do pliku pom:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.1</version>
<configuration>
<archive>
<manifest>
<mainClass>com.yourapp.app.YourMainClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
zaimportować projekt w Eclipse jako projekt Maven, a następnie uruchomić jako aplikacji Java.
archetype used?
aplikacji Swing jest standardowym JAR więc po prostu użyć standardowego Archetyp:
mvn archetype:generate -DgroupId=com.yourapp.app \
-DartifactId=swingapp \
-Dversion=1.0-SNAPSHOT
Jeśli planujesz używać tylko standardowego Swing API, nie ma żadnych dodatkowych zależności do declare.For dodatkowe funkcjonaliści trzeba użyć odpowiednich współzależności w repozytorium
następujących utworów dla mnie:
Utwórz klasę "APP" z główną metodą
package testswing;
import javax.swing.JFrame;
public class App {
public static void main(String[] args) {
JFrame f=new JFrame("Hello World");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
}
Konwersja projektu Maven (poprzez Configure ... Konwersja do Maven projektu kliknij prawym przyciskiem myszy menu)
Zapewnienie pom.xml zawiera manifest, który określa swoją główną klasę:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>TestSwing</groupId>
<artifactId>TestSwing</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>testswing.App</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
</project>
uruchomić Maven budować z "pakietu" bramki (Run As ... Maven menu Zbuduj)
AKTUALIZACJA!
Jeśli pojawi się następujący błąd (Apache Maven 3.3.1):
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2.3:create
(default-cli) on project standalone-pom: Unable to parse configuration of mojo org.apache
.maven.plugins:maven-archetype-plugin:2.3:create for parameter #: Cannot create instance
of interface org.apache.maven.artifact.repository.ArtifactRepository: org.apache.maven.ar
tifact.repository.ArtifactRepository.<init>() -> [Help 1]
Użyj następującego polecenia:
mvn archetype:generate -DgroupId=com.test -DartifactId=AppTest -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
Możesz wolą narzędzie wiersza polecenia dla tworzyć projekt i możesz wolą zaćmienie dla rozwoju.
Utwórz projekt maven.
Przejdź do katalogu Zaćmienie obszaru roboczego i użyć następnego wiersza polecenia:
mvn archetype:create -DgroupId=com.test -DartifactId=AppTest
Importuj projekt w Eclipse:
W menu File >Importuj ... wybierz Istniejące projekty Maven:
Wejście/Przeglądaj ... zaćmienie katalog roboczy (katalog z poprzedniego etapu) i wybierz projekt:
Enjoy!
Na czym dokładnie polega problem? Maven to narzędzie do budowania, które powinno mieć niewielkie znaczenie, co budujesz, bardziej jak je kompilujesz. Zobacz niektóre z tutoriali netbeans. Łatwo jest zmienić projekty, aby używać maven, gdy są jeszcze małe. Jeśli szukacie archetypów, to jestem pewien, że jest ich sporo. – Wes