maven笔记

1.h安装:

下载解压,将maven目录加入M2_HOME,将maven bin目录加入path

mvn -version 查看maven安装是否成功

2.新建一个java项目,文件结构:

ch01--src--main---java---java包

--main--resources

--test----java---java包

--test----resources

clean compile

clean test

clean jetty:run

clean javadoc:javadoc

cobertura:cobertura

clean package

clean install -DskipTests=true

3.eclipse中安装maven---窗口>首选项>maven

4.maven包管理

1.新建一个包目录maven,目录下新建repository文件夹和setting.xml
2.maven安装包下的conf中的setting.xml与maven库中的setting.xml配置一样
    setting.xml文件模板:http://pan.baidu.com/s/1hqIMnK4
3.新建maven项目(maven-quickstart或者maven-webapp)
4.项目中的pom.xml文件配置项目所需要的包
    百度maven repository中心工厂可搜索需要的包
5.项目整合实例
    1.总项目配置:
           <modelVersion>4.0.0</modelVersion>
              <groupId>zttc.itat.user</groupId>
              <artifactId>user-parent</artifactId>
              <version>0.0.1-SNAPSHOT</version>
              <packaging>pom</packaging>
              
              <!-- 大量pom文件配置内容相同,可以放于同一pom项目作为基础项目,
                  由其他项目进行继承 -->
              <url>http://maven.apache.org</url>
              
              <!--  导入三个模块,把三个项目模块聚合一起 ,聚合是模块的位置-->
              <modules>
                  <module>../user-core</module>
                  <module>../user-log</module>
                  <module>../user-service</module>
              </modules>
            <!-- 项目发布到私服工厂设置 -->
            <distributionManagement>
                <repository>
                    <id>user-release</id>
                    <name>user.release.resp</name>
                    <!-- <url>http://localhost:8081/nexus/content/repositories/releases/</url> -->
                    <url>http://localhost:8081/nexus/content/repositories/cms-release/</url>
                </repository>
                <snapshotRepository>
                    <id>user-snapshots</id>
                    <name>user snapshots resp</name>
                    <!-- <url>http://localhost:8081/nexus/content/repositories/snapshots/</url> -->
                    <url>http://localhost:8081/nexus/content/repositories/cms-snapshots/</url>
                </snapshotRepository>
            </distributionManagement>
            
            <!-- 一些常量属性,原本可以在配置文件中的写到此处 -->
          <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
              <jdbc.driver>org.postgresql.Driver</jdbc.driver>
              <jdbc.url>jdbc:postgresql://localhost:5432</jdbc.url>
              <jdbc.username>postgres</jdbc.username>
              <jdbc.password>686991</jdbc.password>
              <tomcat.webapp>D:\Program Files\apache-tomcat-8.0.14</tomcat.webapp>
          </properties>
        <!--   私服中央工厂设置 -->
          <!-- <repositories>
              <repository>
                  <id>nexus</id>
                  <name>Nexus Repository</name>
                  <url>http://localhost:8081/nexus/content/repositories/central/</url>
                  <url>http://localhost:8081/nexus/content/groups/public/</url>
                  <releases>
                      <enabled>true</enabled>
                  </releases>
                  snapshots默认是关闭的,需要手动开启
                  <snapshots>
                      <enabled>true</enabled>
                  </snapshots>
              </repository>
          </repositories> -->
          <!-- 依赖管理器,让其他项目建设依赖配置-->
          <dependencyManagement>
          <dependencies>
          <!-- 测试私服工厂 -->
              <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-server</artifactId>
                <version>9.2.1.v20140609</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.jetty</groupId>
                <artifactId>jetty-servlet</artifactId>
                <version>9.2.2.v20140723</version>
            </dependency>
                  <!-- 测试私服工厂结束 -->
                        <dependency>
                    <groupId>${project.groupId}</groupId>
                    <artifactId>user-log</artifactId>
                    <version>${project.version}</version>
                    <exclusions>
                    <!-- 可以排除某个版本的依赖,用于处理依赖包冲突 -->
                        <exclusion>
                            <groupId>commons-logging</groupId>
                            <artifactId>commons-logging</artifactId>
                        </exclusion>
                    </exclusions>
                </dependency>
                <dependency>
                    <groupId>javax.servlet</groupId>
                    <artifactId>servlet-api</artifactId>
                    <version>2.5</version>
                    <scope>provided</scope>
                </dependency>
            
              </dependencies>
              </dependencyManagement>

        2.子项目继承pom.xml
           <parent>
               <groupId>zttc.itat.user</groupId>
              <artifactId>user-parent</artifactId>
              <version>0.0.1-SNAPSHOT</version>
                <relativePath>../user-parent/pom.xml</relativePath>
          </parent>
          <artifactId>user-web</artifactId>
          <packaging>war</packaging>
          <name>user-web Maven Webapp</name>
          <url>http://maven.apache.org</url>
            <dependencies>
                <dependency>
                  <groupId>junit</groupId>
                  <artifactId>junit</artifactId>
                </dependency>
            </dependencies>

5.有时候启用内部需要搭建内部私服工厂nexus


你可能感兴趣的:(maven笔记)