Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何运行Maven编译的程序?_Java_Maven - Fatal编程技术网

Java 如何运行Maven编译的程序?

Java 如何运行Maven编译的程序?,java,maven,Java,Maven,我开始通过阅读来学习Maven 在示例中,成功运行mvn compile后,如何通过maven运行程序?这一部分似乎从文章中遗漏了 谢谢。通常,maven不用于运行代码。这是一个构建工具,可用于编译、运行单元或集成测试、在本地和远程部署代码等 它基于构建生命周期的思想,而构建生命周期又由一系列构建阶段来定义。例如,默认生命周期有以下阶段: 验证-验证项目是否正确以及所有必要信息是否可用 编译-编译项目的源代码 测试-使用合适的单元测试框架测试编译的源代码。这些测试不应要求打包或部署代码 打包-

我开始通过阅读来学习Maven

在示例中,成功运行
mvn compile
后,如何通过maven运行程序?这一部分似乎从文章中遗漏了


谢谢。

通常,maven不用于运行代码。这是一个构建工具,可用于编译、运行单元或集成测试、在本地和远程部署代码等

它基于构建生命周期的思想,而构建生命周期又由一系列构建阶段来定义。例如,默认生命周期有以下阶段:

  • 验证-验证项目是否正确以及所有必要信息是否可用
  • 编译-编译项目的源代码
  • 测试-使用合适的单元测试框架测试编译的源代码。这些测试不应要求打包或部署代码
  • 打包-将编译后的代码打包成可分发的格式,如JAR
  • 验证-对集成测试结果进行任何检查,以确保符合质量标准
  • 安装-将包安装到本地存储库中,作为本地其他项目的依赖项使用
  • 部署-在构建环境中完成,将最终包复制到远程存储库,以便与其他开发人员和项目共享
有关更多信息,请参阅

更新


话虽如此,正如托比约恩·拉文·安德森(Thorbjørn Ravn Andersen)在这里的回答中提到的那样,这是可能的。

一般来说,maven不用于运行代码。这是一个构建工具,可用于编译、运行单元或集成测试、在本地和远程部署代码等

它基于构建生命周期的思想,而构建生命周期又由一系列构建阶段来定义。例如,默认生命周期有以下阶段:

  • 验证-验证项目是否正确以及所有必要信息是否可用
  • 编译-编译项目的源代码
  • 测试-使用合适的单元测试框架测试编译的源代码。这些测试不应要求打包或部署代码
  • 打包-将编译后的代码打包成可分发的格式,如JAR
  • 验证-对集成测试结果进行任何检查,以确保符合质量标准
  • 安装-将包安装到本地存储库中,作为本地其他项目的依赖项使用
  • 部署-在构建环境中完成,将最终包复制到远程存储库,以便与其他开发人员和项目共享
有关更多信息,请参阅

更新


话虽如此,正如托尔比约恩·拉文·安德森在这里的回答中所提到的那样,这是可能的。

Maven构建过程有许多生命周期或过程中的点<代码>编译是构建步骤之一,但运行以下操作很可能会解决您的问题:

mvn clean package

这将在运行它的文件夹中生成一个JAR文件。然后,您可以尝试使用
java

运行这个JAR文件。Maven构建过程中有许多生命周期或生命点<代码>编译是构建步骤之一,但运行以下操作很可能会解决您的问题:

mvn clean package

这将在运行它的文件夹中生成一个JAR文件。然后,您可以尝试使用
java

运行此JAR文件。您可以使用
publicstaticvoidmain(String[]args)
签名调用java程序,并使用当前pom.xml的组合依赖项的类路径

mvn -q exec:java
您需要在pom.xml中配置要调用的主类,类似于

<build>
    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <version>1.6.0</version>
            <executions>
                <execution>
                    <goals>
                        <goal>java</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <mainClass>demo.Main</mainClass>
            </configuration>
        </plugin>
    </plugins>
</build>

org.codehaus.mojo

详细信息。

您可以使用当前pom.xml的组合依赖项的类路径调用Java程序(即使用
公共静态void main(String[]args)
签名)

mvn -q exec:java
您需要在pom.xml中配置要调用的主类,类似于

<build>
    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <version>1.6.0</version>
            <executions>
                <execution>
                    <goals>
                        <goal>java</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <mainClass>demo.Main</mainClass>
            </configuration>
        </plugin>
    </plugins>
</build>

org.codehaus.mojo

详细信息。

您使用Eclipse吗?
mvn测试
应该运行您的测试。您可以尝试
mvnjar:jar
。您正在阅读“入门”指南,其他指南包括其他选项@Akshay没有这个例子和链接。你在使用Eclipse吗?
mvn测试
应该运行你的测试。您可以尝试
mvnjar:jar
。您正在阅读“入门”指南,其他指南包括其他选项@Akshay没有这个例子和链接。难道不是
mvn安装
只是将包安装(复制编译后的代码)到本地repo吗?@EugeneS
clean安装
确实生成JAR输出,至少在我使用它时是这样。但是生成JAR输出是否意味着运行代码?@EugeneS你读过这个问题吗?OP想知道如何运行我的Maven编译的代码。我的答案是安装,生成一个JAR,然后运行那个JAR。您对此有异议吗?
mvn软件包
将按照您的描述执行
mvn install
是maven生命周期中的下一步,它将复制存储库所在文件夹中生成的工件(jar、war或任何东西)。mvn install
难道不只是将包安装(复制编译后的代码)到本地repo吗?@EugeneS
clean install
会生成jar输出,至少在我使用它的时候是这样。但是生成JAR输出意味着运行代码吗?@EugeneS你读过这个问题吗?OP想知道如何运行我的Maven编译的代码。我的答案是否定的