Java 使用Maven创建独立应用程序

Java 使用Maven创建独立应用程序,java,eclipse,maven,Java,Eclipse,Maven,如何使用Maven创建桌面(独立/Swing)应用程序 我正在使用Eclipse3.6 archetype used? swing应用程序是一个标准JAR,因此只需使用标准原型: mvn archetype:generate -DgroupId=com.yourapp.app \ -DartifactId=swingapp \ -Dversion=1.0-SNAPSHOT 如果您计划仅使用标准

如何使用Maven创建桌面(独立/Swing)应用程序

我正在使用Eclipse3.6

archetype used?
swing应用程序是一个标准JAR,因此只需使用标准原型:

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

如果您计划仅使用标准Swing API,则不需要声明额外的依赖项。对于额外的功能主义者,您必须在存储库中使用适当的依赖项

  • 创建标准Java项目
  • 创建源文件夹“src/main/java”
  • 在源文件夹中创建一个包“testswing”
  • 使用main方法创建类“App”

    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项目右键单击菜单)

  • 确保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>
    
    
    4.0.0
    测试摆动
    测试摆动
    0.0.1-快照
    org.apache.maven.plugins
    maven jar插件
    testswing.App
    
  • 使用“包”目标运行Maven构建(以…Maven构建菜单的形式运行)

  • 您应该得到一个可执行的.jar文件,该文件作为独立的Swing应用程序运行
  • 创建一个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>
    
    
    org.apache.maven.plugins
    maven jar插件
    2.3.1
    com.yourapp.app.YourMainClass
    
  • 将该项目作为Maven项目导入Eclipse,然后作为Java应用程序运行

  • 更新

    如果出现以下错误(Apache Maven 3.3.1):


    您可能希望使用命令行工具来创建项目,也可能希望使用eclipse来开发项目

  • 创建maven项目

    导航到eclipse工作区目录并使用下一个命令行:

    mvn原型:create-DgroupId=com.test-DartifactId=AppTest
    
  • 在eclipse中导入项目:

    在菜单文件导入…中,选择现有Maven项目

    输入/浏览…eclipse工作区目录(上一步的目录)并选择项目:

    享受吧


  • 你到底面临哪些问题?Maven是一个构建工具,它应该与您正在构建的内容关系不大,而与您如何编译它关系更大。请看一些netbeans教程。当项目规模仍然很小时,将项目更改为使用maven非常容易。如果你正在寻找它的原型,那么我肯定有很多。
    [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