maven的pom文件学习

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

相关文章
相关标签/搜索