從零開始,跟我一塊兒作jblog項目(二)Maven

從零開始,跟我一塊兒作jblog項目(一)引言html

從零開始,跟我一塊兒作jblog項目(二)Mavenjava

 

maven是一個項目管理工具,尤爲適用於JAVA世界mysql

在jblog的開發前期,尚未系統使用過maven程序員

只是在有一次合做開發過程當中使用過subclipse以及SVN版本控制,當時瞭解過maven的一些知識spring

在正兒八經學習了《Maven實戰》這本電子書之後,我認爲maven是每個JAVA程序員都須要瞭解並使用的sql

爲何?由於JAVA的世界裏,你不可能全部東西都本身來寫apache

要引入的JAR包實在太多,而這些JAR包的版本也實在太多,已經多到一個失控的地步了json

在這個失控的JAR包世界裏,依賴衝突,重複依賴,依賴臃腫正在不可避免地發生着api

不使用maven,你只能須要JAR包時去它們的官網下載,十有八九你就會下載最新版的,並且十有八九就特麼用不起來緩存

 

maven給全世界的jar包打上了座標,每一個版本都給你打上了座標

你可使用幾行XML標籤,就可以讓maven幫你從中央倉庫中精確下載好指定版本的jar包

而且關於此JAR包一些列的依賴JAR包,它都幫你弄好,你絕對會感謝它的

這就是使用maven最大的好處,此外maven還會幫你優化代碼結構,構建測試框架,實現打包管理等一些很是實用的功能

 

關於maven的具體使用,推薦下載《maven實戰》這本電子書,系統看一下這本書的前六章,不超過100頁PDF

相信你可能很快掌握maven的基本配置和用法

jblog項目規劃的初期,只集成了Hibernate框架,下面是集成Hibernate的POM.XML文件,隨着開發的進展,POM文件也會逐步豐滿的

<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.newflypig.jblog</groupId>
    <artifactId>jblog</artifactId>
    <packaging>war</packaging>
    <version>0.0.1-SNAPSHOT</version>
    <name>jblog Maven Webapp</name>
    <url>http://maven.apache.org</url>
    
    <repositories>
        <repository>
            <id>JBoss repository</id>
            <url>http://repository.jboss.org/nexus/content/groups/public/</url>
        </repository>
        <repository>
            <id>maven</id>
            <name>maven repository</name>
            <url>http://repo2.maven.org/maven2/</url>
        </repository>
    </repositories>
    
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <spring.version>4.1.4.RELEASE</spring.version>
        <hibernate.version>4.3.9.Final</hibernate.version>
    </properties>
    
    
    <dependencies>
        <dependency>
          <groupId>org.hibernate</groupId>
          <artifactId>hibernate-core</artifactId>
          <version>${hibernate.version}</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-ehcache</artifactId>
            <version>${hibernate.version}</version>
        </dependency>
        <!-- 二級緩存ehcache -->
        <dependency>
            <groupId>net.sf.ehcache</groupId>
            <artifactId>ehcache</artifactId>
            <version>2.9.0</version>
        </dependency>
        <!-- log4j -->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
        <!-- mysql鏈接 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.37</version>
        </dependency>
        <!-- json -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.7</version>
        </dependency>
    
    
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.7</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.0-b01</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>
    <build>
        <finalName>jblog</finalName>
    </build>
</project>
相關文章
相關標籤/搜索