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


作者:13
GitHub:https://github.com/ZHENFENG13
版權聲明:本文為原創文章,未經允許不得轉載。

前言

項目展示地址,點這里http://ssm-demo.13blog.site,賬號:admin 密碼:123456

下一篇文章開始,所有的項目源碼都是與maven整合后的代碼了,所以這一篇講一講maven。

簡單介紹

我們看一下github上一些開源項目的目錄結構,下圖中有mybatis、netty、dubbo這些比較有影響的項目,在每個項目中都可以看到一個pom.xml文件,這就是maven的配置文件。
maven

那么maven是什么呢?

百度百科中是這么說的

Maven項目對象模型(POM),可以通過一小段描述信息來管理項目的構建,報告和文檔的軟件項目管理工具。

當然,繼續看下去,還是會有很多專業名詞,如果你是剛入門的話,可以暫時不去看這些,有時間可以慢慢研究。其實Maven是一個項目管理和整合的工具,並且為開發者提供了一套完整的構建生命周期框架。

使用感受

以前經常碰到的情況就是,往往一個跳槽來的新同事會問,“用過maven嗎?怎么不用maven?”等問題,也是有些尷尬的搭不上話,偶爾在網上看代碼的時候也會看到maven項目,但是不會用。那時候也就是因為剛入行,人比較懶吧,也不去看不去學。其實很多人一開始對於maven的印象,認為maven就是一個下載jar包的插件而已,我一開始也是一樣,並不是太在意,上手了一段時間后,才體會到maven不僅僅是一個管理jar包依賴的工具。

按我的理解,maven有茫茫多的好處,比如:

  • 方便管理各種庫文件依賴
  • 標准化構建流程
  • 提升開發者效率
  • 在持續集成中扮演重要作用。

對於開發效率和部署效率的提升真的是使我印象深刻,流程的標准化也可以減少很多人為因素可能帶來的錯誤,當然,如果還沒有上手過maven項目的來說,我的建議最好是趕緊將maven整合進項目中,以上的種種好處你也會慢慢體驗到,而且網上教程資源那么多,完全不用擔心無法入門,想要進階的話也可以看看《Maven實戰》這本書。

在這篇文章中我也只是簡單講一下自己對於maven的使用心得,總結的有些簡單,其實是想告訴看到此文的你,像maven、gradle這些可以明顯提升開發效率的工具真的要用到項目中,一個高效率的工作狀態應該是我們每一個技術人的追求。

安裝與整合

大致總結了以下步驟:

  • 1、下載官方文件
  • 2、解壓並配置maven的環境變量
  • 3、執行maven -v 驗證
  • 4、與開發軟件整合

windows下maven的安裝點這里

linux下maven的安裝點這里

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

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

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

Maven倉庫

由於默認的倉庫地址是國外網址,會對下載速度有一定的影響,下載jar包時,如果沒有將倉庫設置為國內鏈接的話,可能會導致下載慢的情況,這種情況也很好解決,設置國內鏡像或者國內倉庫,當然也可以自己搭建私服,有時間的話會單獨寫一個搭建私服的文章,想了解的也可以自己先搜一下相關教程。

推薦一個搜索jar包的maven依賴時常用地址:http://mvnrepository.com/

幾個國內可用的maven repository連接:
http://maven.oschina.net/content/groups/public/
http://maven.oschina.net/content/repositories/thirdparty/

首推的是阿里雲的Maven倉庫地址:

<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

setting.xml文件

settings.xml文件是用來設置maven參數的配置文件,並且,settings.xml是maven的全局配置文件,而pom.xml文件是所在項目的局部配置。

settings.xml中包含類似本地倉儲位置、修改遠程倉儲服務器、認證信息等配置。

關於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>
<!--當前使用的遠程倉庫為osc-->
<activeByDefault>true</activeByDefault>
</activation>
<repositories>
<repository>
<id>osc</id>
<!--當前使用的遠程倉庫地址 -->
<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>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM