一、pom文件配置
1,添加jar执行主文件及包依赖说明
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.6</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib</classpathPrefix>
<mainClass>com.iujin.app.CensusApplication
</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
2,添加复制jar包到lib目录
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.9</version>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
3,修改编译版本
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
二、重要命令示例
1,导出依赖包(-DoutputDirectory参数可选)
mvn dependency:copy-dependencies -DoutputDirectory=lib
2,手动导入jar包的maven的依赖
mvn install:install-file
-DgroupId=org.wltea
-DartifactId=IKAnalyzer
-Dversion=2012
-Dpackaging=jar
-Dfile=c:\IKAnalyzer-2012.jar
三,常用命令
查看帮助信息:mvn help:help 或 mvn help:help -Ddetail=true
查看插件的帮助信息:mvn <plug-in>:help,比如:mvn dependency:help 或 mvn ant:help 等等。
1. 创建Maven的普通java项目:
mvn archetype:create
-DgroupId=packageName
-DartifactId=projectName
2. 创建Maven的Web项目:
mvn archetype:generate
-DarchetypeArtifactId=maven-archetype-webapp
-DgroupId=com.yutel.web
-DartifactId=yuan
mvn archetype:create
-DarchetypeGroupId=org.apache.maven.archetypes
-DarchetypeArtifactId=maven-archetype-webapp
-DgroupId=packageName
-DartifactId=webappName
3. 编译源代码: mvn compile
4. 编译测试代码:mvn test-compile
5. 运行测试:mvn test
6. 产生站点目录:mvn site
生成站点目录并发布:mvn site-deploy
7. 打包:mvn package
8. 在本地Repository中安装jar:mvn install
9. 清除产生的项目:mvn clean
10. 生成eclipse项目:mvn eclipse:eclipse
11. 生成idea项目:mvn idea:idea
12. 组合使用goal命令,如只打包不测试:mvn -Dtest package
13. 编译测试的内容:mvn test-compile
14. 只打jar包: mvn jar:jar
15. 只测试而不编译,也不测试编译:mvn test -skipping compile -skipping test-compile
( -skipping 的灵活运用,当然也可以用于其他组合命令)
16. 清除eclipse的一些系统设置:mvn eclipse:clean
17. 跳过测试运行maven任务:mvn -Dmaven.test.skip=true XXX
18. 查看实际pom信息: mvn help:effective-pom
19. 分析项目的依赖信息:mvn dependency:analyze 或 mvn dependency:tree
20,查看实际maven设置信息: mvn help:effective-settings
四,特殊用法
1,主要为依赖,继承,合成
<dependency>
<groupId>com.alibaba.china.shared</groupId>
<artifactId>alibaba.apollo.webx</artifactId>
<version>2.5.0</version>
<exclusions>
<exclusion>
<artifactId>org.slf4j.slf4j-api</artifactId>
<groupId>com.alibaba.external</groupId>
</exclusion>
....
</exclusions>
......
</dependencies>