源网址
http://javasight.net/2011/06/3-way-to-run-java-main-from-maven/
概览
Maven的exec插件允许你运行Java项目中的main方法,当然包括将项目依赖中的类路径自动包含。本文向你展示使用Maven exec插件来运行Java文件的3种方式,并提供示例。
1. 从命令行运行
因为你不是在Maven阶段中运行你的代码,首先你需要编译代码。记住exec:java不会自动编译你的代码,你需要首先编译它们。
mvn compile
一旦你的代码编译完毕,下面的代码将会运行你的类
不带参数
mvn exec:java -Dexec.mainClass="net.javasight.module.Main"
带有参数
mvn exec:java -Dexec.mainClass="net.javasight.module.Main" -Dexec.args="arg0 arg1 arg2"
带有类路径上的运行时依赖
mvn exec:java -Dexec.mainClass="net.javasight.module.Main" -Dexec.classpathScope=runtime
2. 在pom.xml的阶段中运行
你也可以在Maven阶段中运行你的主方法。例如,你可以在test阶段运行CodeGenerator.main()方法:
<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>net.javasight.module.CodeGenerator</mainClass>
<arguments>
<argument>arg0</argument>
<argument>arg1</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
要使用上述配置运行exec插件,简单的运行如下命令即可:
mvn test
3)在pom.xml的profile中运行
你可以在不同的profile中运行主方法。简单的包装上述的配置到profile标签中。
<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>net.javasight.module.CodeGenerator</mainClass>
<arguments>
<argument>arg0</argument>
<argument>arg1</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
要调用上述的profile,运行如下命令
mvn test -Pcode-generator
加点自己的东西,
输入mvn test 会自动运行项目里的JUnit测试类。即使没有配置phase,也会运行JUnit测试。诸如 ***Test extends TestCase 的类,都会被自动测试。
分享到:
相关推荐
** Maven 概述** Maven 是一个强大的项目管理和构建工具,广泛应用于Java开发领域。它通过使用一个统一的构建过程,简化了项目的构建、依赖管理以及文档生成等任务。Maven 3.5.2是Maven的一个稳定版本,包含了众多...
Maven3.9.4版本压缩包,仅供学习参考,更新版本请前往Maven官方下载;Maven3.9.4版本压缩包,仅供学习参考,更新版本请前往Maven官方下载;Maven3.9.4版本压缩包,仅供学习参考,更新版本请前往Maven官方下载;Maven...
maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装maven安装...
Apache Maven 是一个强大的项目管理和构建工具,主要用于Java项目。它基于项目对象模型(Project Object Model,POM)的概念,能够管理项目的构建、报告和文档。Maven 3.6.0是该工具的一个稳定版本,提供了许多改进...
apache-maven-3.0.5 apache-maven-3.1.1 apache-maven-3.2.5 apache-maven-3.3.9 apache-maven-3.5.4 apache-maven-3.6.3 apache-maven-3.8.5 每个版本包含4个文件: apache-maven-3.8.5-bin.tar.gz apache-maven-...
**Windows环境下Maven 3.8.8的安装与配置** Maven是Apache软件基金会开发的一个项目管理和综合工具,主要用于Java项目的构建、依赖管理和文档生成。Maven 3.8.8是Maven的一个版本,它包含了对之前版本的一些改进和...
【标题】"maven之开源中国Maven库" 指的是使用 Maven,一个流行的Java项目管理和集成工具,与开源中国的Maven仓库进行交互。开源中国Maven库是中国的一个开源软件资源平台,提供了大量的开源Java库,使得开发者可以...
在IT行业中,Maven是一个非常重要的工具,尤其对于Java开发者来说,它是项目管理和构建的首选。本篇将详细讲解如何在Mac系统上,特别是配备M1芯片的MacBook上安装Apache Maven 3.6.3。 Apache Maven是一个基于项目...
使用Maven导入Maven工程的视频教程 仅供学习交流! 后续会持续分享相关资源,记得关注哦! 使用Maven导入Maven工程的视频教程 使用Maven导入Maven工程的视频教程 使用Maven导入Maven工程的视频教程 使用Maven导入...
Apache Maven 是一个强大的项目管理和构建工具,主要用于Java项目。它基于项目对象模型(Project Object Model,POM),能够管理项目的构建、报告和文档,通过一套统一的构建生命周期和插件系统,极大地简化了软件...
Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。 Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,...
**Maven API 深入理解** Maven API 是 Apache Maven 的核心接口和类库,它是构建Java项目的重要工具,提供了强大的依赖管理和项目对象模型(Project Object Model, POM)。Maven API使得开发者能够通过简单的命令行...
apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-maven-3.8.6-bin.zip apache-...
Maven是Java领域广泛使用的项目管理工具,它能够帮助开发者完成项目的构建、文档生成、报告、依赖管理和软件生命周期管理等工作。通过本文的介绍,我们可以了解到Maven的基本概念、安装配置、基本使用和深入应用详解...
Maven最新版是款项目管理和构建自动化工具。Maven包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System)。 安装...
maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置maven配置...
Apache Maven 是一个强大的Java项目管理工具,它极大地简化了构建、依赖管理和项目文档的生成过程。Maven 3.6.0是该工具的一个稳定版本,提供了多项改进和新特性,旨在提高开发效率和增强项目的可维护性。 Maven的...
开发者可以使用插件扩展Maven的功能,例如,`maven-jar-plugin`用于打包JAR文件,`maven-war-plugin`用于打包WAR文件,`maven-compiler-plugin`负责编译源代码。 - **聚合与继承**:Maven支持项目聚合和继承,通过`...
** Maven 3.6 安装与配置指南 ** Maven 是一个强大的项目管理工具,主要应用于Java开发领域。它简化了构建、依赖管理和项目生命周期的管理,通过使用一种标准化的项目对象模型(Project Object Model,POM)来描述...
Apache Maven是一个强大的项目管理工具,它提供了丰富的插件系统来扩展构建过程。exec-maven-plugin是Maven生态系统中的一个插件,它允许用户在Maven构建过程中执行外部命令或脚本。这使得Maven项目可以集成更多的...