1. 程式人生 > >第5步 配置pom.xml檔案 pom檔案好了就是jar包引入好了

第5步 配置pom.xml檔案 pom檔案好了就是jar包引入好了


<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

  <!--  自動生成的部分  -->
  <modelVersion>4.0.0</modelVersion>
  <groupId>com</groupId>
  <artifactId>mmall</artifactId>
  <!--  打包打成war包 -->
  <packaging>war</packaging>
  <!--  1.0的快照版  -->
  <version>1.0-SNAPSHOT</version>
  <name>mmall Maven Webapp</name>
  <url>http://maven.apache.org</url>





  <!--  pom裡面的配置   -->
  <properties>
<!--   字符集utf-8 -->
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <!--  maven  編譯字符集 也是utf-8  -->
    <maven.compiler.encoding>UTF-8</maven.compiler.encoding>

    <!--   定義變數後面直接引用就好了    可以修改見文生義即可   -->
    <!--  org.springframework.version  這個是自定義的能看懂即可   下面這3個都是自定義的     -->
    <org.springframework.version>4.0.0.RELEASE</org.springframework.version>
    <!--   mybatis的版本  -->
    <org.mybatis.version>3.4.1</org.mybatis.version>
    <!--  mybatis 和spring整合要用到的jar包   -->
    <org.mybatis.spring.version>1.3.0</org.mybatis.spring.version>
  </properties>


  <!--  dependencies 專案的主要配置     -->
  <dependencies>

    <!--  servlet的jar包  -->
    <dependency>
      <groupId>org.apache.tomcat</groupId>
      <artifactId>tomcat-servlet-api</artifactId>
      <version>7.0.64</version>
    </dependency>


    <!--  SpringMVC的jar包   -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <!--  引用 上面自定義的常量   自定義常量   -->
      <version>${org.springframework.version}</version>
    </dependency>

    <!--   oxm   -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-oxm</artifactId>
      <version>${org.springframework.version}</version>
    </dependency>

    <!--   jdbc   -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jdbc</artifactId>
      <version>${org.springframework.version}</version>
    </dependency>


    <!--   tx   -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-tx</artifactId>
      <version>${org.springframework.version}</version>
    </dependency>


    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-test</artifactId>
      <version>${org.springframework.version}</version>
    </dependency>


    <!--  用於aop  -->
    <dependency>
      <groupId>org.aspectj</groupId>
      <artifactId>aspectjweaver</artifactId>
      <version>1.7.3</version>
    </dependency>

    <!--  mybatis和spring整合的jar包  -->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis-spring</artifactId>
      <version>${org.mybatis.spring.version}</version>
    </dependency>


    <!--   mybatis  -->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>${org.mybatis.version}</version>
    </dependency>

    <!--  aop用的jar包 -->
    <dependency>
      <groupId>org.aspectj</groupId>
      <artifactId>aspectjrt</artifactId>
      <version>1.6.11</version>
    </dependency>

    <!--  json序列化和反序列化用到的   -->
    <dependency>
      <groupId>org.codehaus.jackson</groupId>
      <artifactId>jackson-mapper-asl</artifactId>
      <version>1.9.12</version>
    </dependency>

    <!--  連線池 -->
    <dependency>
      <groupId>commons-dbcp</groupId>
      <artifactId>commons-dbcp</artifactId>
      <version>1.4</version>
      <!--<scope>runtime</scope>-->
    </dependency>


    <!--   日誌jar    logback作為日誌   -->
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <version>1.1.2</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-core</artifactId>
      <version>1.1.2</version>
      <scope>compile</scope>
    </dependency>


    <!--  mysql的驅動  -->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.6</version>
    </dependency>

    <!--  guava  提供了豐富的工具類和資料結構  -->
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>guava</artifactId>
      <version>20.0</version>
    </dependency>


    <!--  apache的工具類  有很多的工具類可以使用  -->
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-lang3</artifactId>
      <version>3.5</version>
    </dependency>


    <!--  集合工具類   -->
    <dependency>
      <groupId>commons-collections</groupId>
      <artifactId>commons-collections</artifactId>
      <version>3.2.1</version>
    </dependency>


    <!--  單元測試的工具類  -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.12</version>
      <!--<scope>test</scope>-->
    </dependency>

    <!-- 時間處理的jar包   -->
    <dependency>
      <groupId>joda-time</groupId>
      <artifactId>joda-time</artifactId>
      <version>2.3</version>
    </dependency>


    <!-- id加密解密  後面還會講  -->
    <dependency>
      <groupId>org.hashids</groupId>
      <artifactId>hashids</artifactId>
      <version>1.0.1</version>
    </dependency>


    <!-- ftpclient   上傳ftp伺服器的jar包  -->
    <dependency>
      <groupId>commons-net</groupId>
      <artifactId>commons-net</artifactId>
      <version>3.1</version>
    </dependency>

    <!-- file upload  上傳檔案用到的jar包   springmvc上傳過來的檔案     -->
    <!-- https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload -->
    <dependency>
      <groupId>commons-fileupload</groupId>
      <artifactId>commons-fileupload</artifactId>
      <version>1.2.2</version>
    </dependency>
<!--和上面的是一起的-->
    <dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
      <version>2.0.1</version>
    </dependency>




    <!--  mybatis pager    3個mybatis分頁外掛的jar包   dao層有mybatis的三劍客
          1 分頁外掛    2  生成持久層dao的xml檔案  dao層介面的工具   3 idea的外掛
    -->

    <dependency>
      <groupId>com.github.pagehelper</groupId>
      <artifactId>pagehelper</artifactId>
      <version>4.1.0</version>
    </dependency>

    <dependency>
      <groupId>com.github.miemiedev</groupId>
      <artifactId>mybatis-paginator</artifactId>
      <version>1.2.17</version>
    </dependency>

    <dependency>
      <groupId>com.github.jsqlparser</groupId>
      <artifactId>jsqlparser</artifactId>
      <version>0.9.4</version>
    </dependency>


    <!-- alipay    整合支付寶的jar包  還需要整合本地的jar    下面的都是支付用到的jar
         alipay 的公共依賴本來是依賴jar包的  還是依賴pom檔案好了  但是jar包的版本必須一致
    -->
    <dependency>
      <groupId>commons-codec</groupId>
      <artifactId>commons-codec</artifactId>
      <version>1.10</version>
    </dependency>
    <dependency>
      <groupId>commons-configuration</groupId>
      <artifactId>commons-configuration</artifactId>
      <version>1.10</version>
    </dependency>
    <dependency>
      <groupId>commons-lang</groupId>
      <artifactId>commons-lang</artifactId>
      <version>2.6</version>
    </dependency>
    <dependency>
      <groupId>commons-logging</groupId>
      <artifactId>commons-logging</artifactId>
      <version>1.1.1</version>
    </dependency>
    <dependency>
      <groupId>com.google.zxing</groupId>
      <artifactId>core</artifactId>
      <version>2.1</version>
    </dependency>
    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
      <version>2.3.1</version>
    </dependency>
    <dependency>
      <groupId>org.hamcrest</groupId>
      <artifactId>hamcrest-core</artifactId>
      <version>1.3</version>
    </dependency>

    <dependency>
      <groupId>redis.clients</groupId>
      <artifactId>jedis</artifactId>
      <version>2.9.0</version>
    </dependency>
    <dependency>
      <groupId>org.apache.httpcomponents</groupId>
      <artifactId>httpclient</artifactId>
      <version>4.4.1</version>
    </dependency>


    <!--
           引入一個jads 教教大家怎麼配置
           http://search.maven.org/    搜尋jedis     找到redis clients
           <dependency>
              <groupId>redis.clients</groupId>
              <artifactId>jedis</artifactId>
              <version>2.9.0</version>
          </dependency>

          <dependency>
            <groupId>com.redislabs</groupId>
            <artifactId>jedis</artifactId>
            <version>3.0.0-m1</version>
          </dependency>


          這個配置檔案是我們平時一點點放進去的  不是一下子就放入的   絕不是一蹴而就的 
      -->


  </dependencies>


  <build>
    <!--   和專案名一致 
    <finalName>HealthMail3</finalName>
    -->
    <finalName>rtcf</finalName>
    <plugins>
      <plugin>
        <!--  mybatis三劍客中一個   生成generator外掛  他會根據我們資料庫的資料結構生成dao層檔案  我們在改改就好了  -->
        <groupId>org.mybatis.generator</groupId>
        <artifactId>mybatis-generator-maven-plugin</artifactId>
        <version>1.3.2</version>
        <configuration>
          <verbose>true</verbose>
          <overwrite>true</overwrite>
        </configuration>
      </plugin>

      <!--   這個配置非常非常的重要  不配置本地跑沒問題 釋出到伺服器上就  找不到jar包了     -->
      <!-- geelynote maven的核心外掛之-complier外掛預設只支援編譯Java 1.4,因此需要加上支援高版本jre的配置,在pom.xml裡面加上 增加編譯外掛 -->
      <plugin>
        <!--   maven  外掛  -->
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <!--  jdk 1.8 -->
          <source>1.8</source>
          <!--  jdk 1.8 -->
          <target>1.8</target>
          <encoding>UTF-8</encoding>
          <!--   配置專案的目錄  支付寶的jar包我們就放到這個目錄下面    主要是針對釋出版  本地不配置也沒事  非常重要
                 中央倉庫是沒有支付寶的jar包的
                 這個配置可以讓我們找到工程下面的jar包
                 compilerArguments  這個外掛是要自己配置的
            -->
          <compilerArguments>
            <!--非常重要  ${project.basedir}  指工程名HealthMail3  支付寶的jar在這裡引入
                支付寶的jar中央倉庫沒有    支付寶的jar包放在這裡
              -->
            <extdirs>${project.basedir}/src/main/webapp/WEB-INF/lib</extdirs>
          </compilerArguments>
        </configuration>
      </plugin>
    </plugins>

  </build>


</project>