maven是规定了一种项目代码布局格式,maven按照这种格式进行代码管理、依赖jar管理、单元测试、资管管理、编译管理、发布管理。java
maven的核心是mvn命令和pom.xml文件apache
pom.xml文件做为maven和核心之一,对其语法使用总结以下:服务器
1.properties关键字:项目的全局属性,如打包须要的编码 网络
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties>
2.repositories关键字:配置仓库的http服务路径,能够是本地私服、也能够是网络服务器私服、或者官方服务器,有顺序maven
<repositories> <repository> <id>build.local.libs</id> <url>http://build.local:8081/artifactory/libs-release-local</url> <layout>default</layout> </repository> <repository> <id>build.local.ext</id> <url>http://build.local:8081/artifactory/ext-release-local</url> </repository> <repository> <id>morphia.local</id> <name>build.local-releases</name> <url>http://build.local:8081/artifactory/morphia</url> </repository> </repositories>
3.dependencies关键字:全部的依赖jar信息布局
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.8.2</version> <scope>test</scope> </dependency> </dependencies>
4.内部项目公共jar包发布单元测试
<distributionManagement> <repository> <id>local-artifactory</id> <name>build.local-releases</name> <url>http://build.local:8081/artifactory/libs-release-local</url> </repository> </distributionManagement>
5.项目profile配置测试
<profiles> <profile> <id>dist</id> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.0.2</version> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>8.0.1.v20110908</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <configuration> <descriptors> <descriptor>assembly.xml</descriptor> </descriptors> </configuration> <executions> <execution> <phase>package</phase> <goals> <goal>attached</goal> </goals> </execution> </executions> </plugin> </plugins> </pluginManagement> </build> </profile> <profile> <id>sun.jdk</id> <activation> <property> <name>java.vendor</name> <value>Sun Microsystems Inc.</value> </property> </activation> <properties> <toolsjar>C:/Program Files/Java/jdk1.6.0_45/lib/tools.jar</toolsjar> </properties> </profile> <profile> <id>default-tools.jar</id> <activation> <property> <name>java.vendor</name> <value>Sun Microsystems Inc.</value> </property> </activation> <dependencies> <dependency> <groupId>com.sun</groupId> <artifactId>tools</artifactId> <version>1.5.0</version> <scope>system</scope> <!-- 此处根据实际配置 --> <systemPath>C:/Program Files/Java/jdk1.6.0_45/lib/tools.jar</systemPath> </dependency> </dependencies> </profile> </profiles>
build设置:ui
Goals:clean install assembly:assembly编码
Profiles:dist