使用Maven运行Java main的3种方式

本文介绍了三种使用Maven exec插件运行Java main方法的方法:命令行方式、在pom.xml中绑定特定生命周期阶段以及通过配置文件的方式。此外,还提供了如何传递参数和指定依赖范围的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

From: http://www.tuicool.com/articles/UJJvim

maven使用exec插件运行java main方法,以下是3种不同的操作方式。

一、 从命令行运行

1、运行前先编译代码,exec:java不会自动编译代码,你需要手动执行mvn compile来完成编译。

mvn compile
2、编译完成后,执行exec运行main方法。 

不需要传递参数:

mvn exec:java -Dexec.mainClass="com.vineetmanohar.module.Main"

需要传递参数:

mvn exec:java -Dexec.mainClass="com.vineetmanohar.module.Main" -Dexec.args="arg0 arg1 arg2"

指定对classpath的运行时依赖:

mvn exec:java -Dexec.mainClass="com.vineetmanohar.module.Main" -Dexec.classpathScope=runtime
二、 在pom.xml中指定某个阶段执行
<build>
 <plugins>
  <plugin>
   <groupId>org.codehaus.mojo</groupId>
   <artifactId>exec-maven-plugin</artifactId>
   <version>1.1.1</version>
   <executions>
    <execution>
     <phase>test</phase>
     <goals>
      <goal>java</goal>
     </goals>
     <configuration>
      <mainClass>com.vineetmanohar.module.CodeGenerator</mainClass>
      <arguments>
       <argument>arg0</argument>
       <argument>arg1</argument>
      </arguments>
     </configuration>
    </execution>
   </executions>
  </plugin>
 </plugins>
</build>
将CodeGenerator.main()方法的执行绑定到maven的 test 阶段,通过下面的命令可以执行main方法:
mvn test
三、 在pom.xml中指定某个配置来执行
<profiles>
 <profile>
  <id>code-generator</id>
  <build>
   <plugins>
    <plugin>
     <groupId>org.codehaus.mojo</groupId>
     <artifactId>exec-maven-plugin</artifactId>
     <version>1.1.1</version>
     <executions>
      <execution>
       <phase>test</phase>
       <goals>
        <goal>java</goal>
       </goals>
       <configuration>
        <mainClass>com.vineetmanohar.module.CodeGenerator</mainClass>
        <arguments>
         <argument>arg0</argument>
         <argument>arg1</argument>
        </arguments>
       </configuration>
      </execution>
     </executions>
    </plugin>
   </plugins>
  </build>
 </profile>
</profiles>
将2中的配置用<profile>标签包裹后就能通过指定该配置文件来执行main方法,如下:
mvn test -Pcode-generator
注:通过以下命令可以获取mvn exec的其他配置参数说明。
mvn exec:help -Ddetail=true -Dgoal=java

英文地址: http://www.vineetmanohar.com/2009/11/3-ways-to-run-java-main-from-maven/

### 使用Maven运行Java项目的指南 #### 创建`pom.xml` 为了定义Maven项目,需要创建一个名为`pom.xml`的XML文件。此文件不仅提供项目的名称、版本信息,还列出了对外部库的依赖关系[^2]。 ```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>com.example</groupId> <artifactId>example-project</artifactId> <version>1.0-SNAPSHOT</version> <!-- 依赖管理 --> <dependencies> <!-- 添加所需的外部库依赖项 --> </dependencies> </project> ``` #### 编译源代码 通过命令行工具执行编译操作: ```bash mvn compile ``` 这条指令会触发Maven下载必要的插件并编译所有的Java文件到目标目录下。 #### 执行测试案例 确保所有单元测试都能顺利通过非常重要,在终端输入如下命令来完成这项工作: ```bash mvn test ``` 这一步骤能够帮助验证程序逻辑是否正确无误,并且可以发现潜在的问题所在。 #### 构建可执行JAR包 如果希望打包成可以直接运行的应用,则需配置好相应的构建参数后使用下面的方法生成jar文件: ```bash mvn package ``` 此时应该会在控制台看到一系列来自Maven的消息提示;重要的是确认最终出现了“BUILD SUCCESS”的字样表示成功完成了整个过程[^4]。 #### 运行应用程序 对于带有main类方法的标准应用来说,可以通过以下方式启动它: ```bash mvn exec:java -Dexec.mainClass="全限定名.MainClassName" ``` 这里需要注意替换掉最后部分中的路径以及入口函数所在的类名以匹配实际工程结构。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值