• 从零开始,跟我一起做jblog项目(二)Maven


    从零开始,跟我一起做jblog项目(一)引言

    从零开始,跟我一起做jblog项目(二)Maven

    maven是一个项目管理工具,尤其适用于JAVA世界

    在jblog的开发前期,还没有系统使用过maven

    只是在有一次合作开发过程中使用过subclipse以及SVN版本控制,当时了解过maven的一些知识

    在正儿八经学习了《Maven实战》这本电子书以后,我认为maven是每一个JAVA程序员都需要了解并使用的

    为什么?因为JAVA的世界里,你不可能所有东西都自己来写

    要引入的JAR包实在太多,而这些JAR包的版本也实在太多,已经多到一个失控的地步了

    在这个失控的JAR包世界里,依赖冲突,重复依赖,依赖臃肿正在不可避免地发生着

    不使用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>
  • 相关阅读:
    JAVA 解压压缩包中指定文件或实现压缩文件的预览及下载单个或多个指定的文件
    java 解压zip java.lang.IllegalArgumentException: MALFORMED 错误
    Java文件管理系统
    Java实现用汉明距离进行图片相似度检测的
    url 编码(percentcode 百分号编码)
    nodejs进程管理
    nodejs网络编程
    nodejs内存溢出 FATAL ERROR: CALL_AND_RETRY_0 Allocation failed – process out of memory
    connect ECONNREFUSED 127.0.0.1:80错误解决
    nuxtjs如何在单独的js文件中引入store和router
  • 原文地址:https://www.cnblogs.com/newflydd/p/4969277.html
Copyright © 2020-2023  润新知