Создайте автономное приложение с Maven

Как создать приложение для рабочего стола (автономное/Swing) с помощью Maven?

Я использую Eclipse 3.6.

Ответ 1

  • Создайте проект Maven следующим образом:

    mvn archetype:generate -DgroupId=com.yourapp.app 
                           -DartifactId=swingapp  
                           -Dversion=1.0-SNAPSHOT
    
  • Добавьте следующую запись в файл 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>
    
  • Импортируйте проект в Eclipse как проект Maven, а затем запустите его как приложение Java.

Ответ 2

archetype used?

Приложение swing является стандартным JAR, поэтому просто используйте стандартный архетип:

mvn archetype:generate -DgroupId=com.yourapp.app \
                       -DartifactId=swingapp     \
                       -Dversion=1.0-SNAPSHOT

Если вы планируете использовать только стандартный Swing API, для объявления нет дополнительных зависимостей. Для дополнительных функционалистов вам необходимо использовать соответствующие зависимости в репозитории

Ответ 3

Для меня работает следующее:

  • Создать стандартный проект Java
  • Создайте исходную папку "src/main/java"
  • Создайте пакет "testwing" в исходной папке
  • Создайте класс "Приложение" с помощью основного метода

    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);
        }  
    }
    
  • Преобразовать в проект Maven (через меню "Настроить... Преобразовать в Maven Project" )

  • Убедитесь, что pom.xml содержит манифест, указывающий ваш основной класс:

    <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>
    
  • Запустите сборку Maven с целью "пакет" (запустите как... Maven Build)

  • Вы должны получить исполняемый файл .jar, который запускается как автономное приложение Swing

Ответ 4

<суб > UPDATE!суб >

New icon Если вы получите следующую ошибку (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]

Используйте следующую команду:

mvn archetype:generate -DgroupId=com.test -DartifactId=AppTest -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

Вы можете предпочесть инструмент командной строки для проекта create, и вы можете предпочесть затмение для разработки.

  • Создайте проект maven.

    Перейдите в каталог рабочей области eclipse и используйте следующую командную строку:

    mvn archetype:create -DgroupId=com.test -DartifactId=AppTest
    
  • Импортировать проект в eclipse:

    В меню Файл > Импорт... выберите Существующие проекты Maven:

    Import Existing Maven Projects

    Ввод/ Обзор... каталога рабочего пространства eclipse (каталог предыдущего шага) и выберите проект:

    Select Maven Projects

    Наслаждайтесь!