您的位置:首页 > 其它

maven run project

2016-01-18 10:26 363 查看
在maven工程里运行Java main方法是通过Maven的exec插件以命令行方式运行。

在运行前,你需要先编译代码,记住exec:java不会自动为你编译代码,你需要先编译。
mvn compile

编译完之后如下命令运行你的class
mvn exec:java -Dexec.mainClass="com.vineetmanohar.module.Main"

如果需要添加参数
mvn exec:java -Dexec.mainClass="com.vineetmanohar.module.Main" -Dexec.args="arg0 arg1 arg2"

附注:

1. maven的编译依赖范围:

compile:默认使用该依赖,对编译,测试,运行三种classpath 都有效

test: 只对测试时有效,如junit (在dependency中,当<scope>为test时,说明该依赖包只会加入到测试代码中去)

provided:在运行时无效,对编译和测试有效,如servlet-api

runtime:如JDBC,对测试和运行有效,在编译时无效

2.一个对传递性依赖的排除

示例2.1:表示虽然依赖project-a,但是不想依赖a所依赖的b。

<dependency>

<groupId>org.sonatype.mavenbook</groupId>

<artifactId>project-a</artifactId>

<version>1.0</version>

<exclusions>

<exclusion>

<groupId>org.sonatype.mavenbook</groupId>

<artifactId>project-b</artifactId>

</exclusion>

</exclusions>

</dependency>

示例2.2:排除一个依赖, 添加另外一个依赖:
<dependency>

<groupId>org.hibernate</groupId>

<artifactId>hibernate</artifactId>

<version>3.2.5.ga</version>

<exclusions>

<exclusion>

<groupId>javax.transaction</groupId>

<artifactId>jta</artifactId>

</exclusion>

</exclusions>

</dependency>

<dependency>

<groupId>org.apache.geronimo.specs</groupId>

<artifactId>geronimo-jta_1.1_spec</artifactId>

<version>1.1</version>

</dependency>

使用排除依赖, 一般是一个传递依赖在编译的时候需要, 但是在实际运行环境不需要的时候
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: