Spring+SpringMVC+MyBatis+easyUI整合基礎(chǔ)篇(五)講一下maven

github地址,點這里。
項目效展示,點這里。賬號:admin 密碼:123456
下一篇文章開始,所有的項目源碼都是與maven整合后的代碼了,所以這一篇講一講maven。

1、簡單介紹
我們看一下github上一些開源項目的目錄結(jié)構(gòu),下圖中有mybatis、netty、dubbo這些比較有影響的項目,在每個項目中都可以看到一個pom.xml文件,這就是maven的配置文件。



那么maven是什么呢?
百度百科中是這么說的,“Maven項目對象模型(POM),可以通過一小段描述信息來管理項目的構(gòu)建,報告和文檔的軟件項目管理工具?!碑?dāng)然,繼續(xù)看下去,還是會有很多專業(yè)名詞,如果你是剛?cè)腴T的話,可以暫時不去看這些,有時間可以慢慢研究。其實Maven是一個項目管理和整合的工具,并且為開發(fā)者提供了一套完整的構(gòu)建生命周期框架。

2、使用感受
以前經(jīng)常碰到的情況就是,往往一個跳槽來的新同事會問,“用過maven嗎?怎么不用maven?”等問題,也是有些尷尬的搭不上話,偶爾在網(wǎng)上看代碼的時候也會看到maven項目,但是不會用。那時候也就是因為剛?cè)胄?,人比較懶吧,也不去看不去學(xué)。其實很多人一開始對于maven的印象,認(rèn)為maven就是一個下載jar包的插件而已,我一開始也是一樣,并不是太在意,上手了一段時間后,才體會到maven不僅僅是一個管理jar包依賴的工具,按我的理解,maven有茫茫多的好處,比如:方便管理各種庫文件依賴、標(biāo)準(zhǔn)化構(gòu)建流程、提升開發(fā)者效率、在持續(xù)集成中扮演重要作用。
對于開發(fā)效率和部署效率的提升真的是使我印象深刻,流程的標(biāo)準(zhǔn)化也可以減少很多人為因素可能帶來的錯誤,當(dāng)然,如果還沒有上手過maven項目的來說,我的建議最好是趕緊將maven整合進(jìn)項目中,以上的種種好處你也會慢慢體驗到,而且網(wǎng)上教程資源那么多,完全不用擔(dān)心無法入門,想要進(jìn)階的話也可以看看《Maven實戰(zhàn)》這本書。
在這篇文章中我也只是簡單講一下自己對于maven的使用心得,總結(jié)的有些簡單,其實是想告訴看到此文的你,像maven、gradle這些可以明顯提升開發(fā)效率的工具真的要用到項目中,一個高效率的工作狀態(tài)應(yīng)該是我們每一個技術(shù)人的追求。

3、安裝與整合
大致總結(jié)了以下步驟:1、下載官方文件 2、解壓并配置maven的環(huán)境變量 3、執(zhí)行maven -v 驗證 4、與開發(fā)軟件整合

windows下maven的安裝,點這里
linux下maven的安裝,點這里

安裝后就是與eclipse或者idea等開發(fā)軟件整合的事情啦。

eclipse與maven整合,點這里
idea與maven整合,點這里

這些都是需要自己花點時間去研究的東西,而且網(wǎng)上教程也多,就直接放了感覺不錯的教程的鏈接地址。

4、maven倉庫
由于默認(rèn)的倉庫地址是國外網(wǎng)址,會對下載速度有一定的影響,下載jar包時,如果沒有將倉庫設(shè)置為國內(nèi)鏈接的話,可能會導(dǎo)致下載慢的情況,這種情況也很好解決,設(shè)置國內(nèi)鏡像或者國內(nèi)倉庫,當(dāng)然也可以自己搭建私服,有時間的話會單獨(dú)寫一個搭建私服的文章,想了解的也可以自己先搜一下相關(guān)教程。
推薦一個搜索jar包的maven依賴時常用地址:http://mvnrepository.com/
幾個國內(nèi)可用的maven repository連接:
http://maven.oschina.net/content/groups/public/
http://maven.oschina.net/content/repositories/thirdparty/

5、setting.xml文件
settings.xml文件是用來設(shè)置maven參數(shù)的配置文件。并且,settings.xml是maven的全局配置文件。而pom.xml文件是所在項目的局部配置。settings.xml中包含類似本地倉儲位置、修改遠(yuǎn)程倉儲服務(wù)器、認(rèn)證信息等配置。
關(guān)于setting.xml介紹可以看這里

下面是一個settings.xml的示例文件:

<?xml version="1.0" encoding="UTF-8"?>

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">

    <!-- 本地倉庫:本地存放jar包的文件夾位置 -->
    <localRepository>/xx/xx</localRepository>

    <pluginGroups>
    </pluginGroups>

    <proxies>
    </proxies>

    <servers>
    </servers>

    <!--加速鏡像,也可以考慮阿里云的maven鏡像 -->
    <mirrors>
        <mirror>
            <id>UK</id>
            <mirrorOf>central</mirrorOf>
            <url>http://uk.maven.org/maven2</url>
        </mirror>
        <mirror>
            <id>net-cn</id>
            <mirrorOf>central</mirrorOf>
            <url>http://maven.net.cn/content/groups/public/</url>
        </mirror>
        <mirror>
            <id>osc</id>
            <mirrorOf>central</mirrorOf>
            <url>http://maven.oschina.net/content/groups/public/</url>
        </mirror>
        <mirror>
            <id>osc_thirdparty</id>
            <mirrorOf>thirdparty</mirrorOf>
            <url>http://maven.oschina.net/content/repositories/thirdparty/</url>
        </mirror>
    </mirrors>

    <profiles>
        <profile>
            <id>osc</id>
            <activation>
                <!--當(dāng)前使用的遠(yuǎn)程倉庫為osc-->
                <activeByDefault>true</activeByDefault>
            </activation>
            <repositories>
                <repository>
                    <id>osc</id>
                    <!--當(dāng)前使用的遠(yuǎn)程倉庫地址 -->
                    <url>http://maven.oschina.net/content/groups/public/</url>
                </repository>
                <repository>
                    <id>osc_thirdparty</id>
                    <url>http://maven.oschina.net/content/repositories/thirdparty/</url>
                </repository>
            </repositories>
            <pluginRepositories>
                <pluginRepository>
                    <id>osc</id>
                    <url>http://maven.oschina.net/content/groups/public/</url>
                </pluginRepository>
            </pluginRepositories>
        </profile>
        <profile>
            <id>net-cn</id>
            <repositories>
                <repository>
                    <id>net-cn</id>
                    <url>http://maven.net.cn/content/groups/public/</url>
                </repository>
            </repositories>
            <pluginRepositories>
                <pluginRepository>
                    <id>net-cn</id>
                    <url>http://maven.net.cn/content/groups/public/</url>
                </pluginRepository>
            </pluginRepositories>
        </profile>
    </profiles>


</settings>

怕說多了啰嗦,就到這里吧,等下把代碼整合一下,放到github上啦。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,564評論 19 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,273評論 6 342
  • |-1-更新內(nèi)容[6.從倉庫解析依賴的機(jī)制(重要)] 1Maven倉庫作用 倉庫用來存儲所有項目使用到構(gòu)件,在ma...
    zlcook閱讀 6,458評論 0 25
  • 前言什么是 POMQuick Overview POM 常用元素 pom.xml 完整注釋 參考 0 前言 什么是...
    阿父閱讀 12,765評論 1 36
  • “做一個有趣的人。” 在一個普通的夜晚,莫小凡發(fā)了這條朋友圈,配圖是自己半年前在東南亞的海邊拍的風(fēng)景照。隨后,她把...
    茶茶的平行世界閱讀 445評論 0 1

友情鏈接更多精彩內(nèi)容