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

#java #eclipse #maven

#java #eclipse #maven

Вопрос:

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

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

Комментарии:

1. С какими именно проблемами вы сталкиваетесь? Maven — это инструмент сборки, он не должен иметь большого значения для того, что вы создаете, больше для того, как вы его компилируете. Взгляните на некоторые руководства по netbeans. Довольно легко изменить проекты для использования maven, когда они все еще маленькие. Если вы ищете его архетипы, то я уверен, что их множество.

Ответ №1:

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

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

Ответ №2:

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

  1. Создайте стандартный проект Java
  2. Создайте исходную папку «src/main/java»
  3. Создайте пакет «testswing» в папке с исходным кодом
  4. Создайте класс «App» с помощью метода main

     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);
        }  
    }
      
  5. Преобразовать в проект Maven (через Configure… Преобразовать в проект Maven, щелкнув правой кнопкой мыши меню)

  6. Убедитесь, что 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>
      
  7. Запустите сборку Maven с целью «пакет» (Run As… Меню сборки Maven)

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

Ответ №3:

 archetype used?
  

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

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

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

Ответ №4:

ОБНОВЛЕНИЕ!

Новый значок Если вы получаете следующую ошибку (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
  

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

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

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

     mvn archetype:create -DgroupId=com.test -DartifactId=AppTest
      
  2. Импортируйте проект в eclipse:

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

    Импортируйте существующие проекты Maven

    Ввод /Просмотр…перейдите в каталог eclipse workspace (каталог предыдущего шага) и выберите проект:

    Выберите проекты Maven

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