引入一個jar包的兩個版本,maven 強制更新_maven入坑指南

 2023-10-02 阅读 30 评论 0

摘要:咱們還是老規矩,先上一波福利,如圖:maven是一個Java語言編寫的開源項目管理工具,是Apache軟件基金會的頂級項目。主要用于項目構建,依賴管理,項目信息管理。對于程序猿來講,maven再熟悉不過了,關于maven的文章也很多

咱們還是老規矩,先上一波福利,如圖:

110c6a55e705793b2a3f56c89538fb8a.png

maven是一個Java語言編寫的開源項目管理工具,是Apache軟件基金會的頂級項目。主要用于項目構建,依賴管理,項目信息管理。

對于程序猿來講,maven再熟悉不過了,關于maven的文章也很多,但是都沒有抓住重點,那么你有福利了,來聽我將maven的故事,保準你一聽就懂,一看就會,在學習maven的道路上暢通無阻。

你可以把maven當做一個超市,超市里有柴米油鹽醬醋茶等等很多材料,你需要哪個材料只需要通過一定的手段拿即可。對于剛入門的程序猿來講,他(她)會認為是這樣的:1、maven就是將jar包存放到maven本地倉庫,本地倉庫文件夾下的.m2文件夾下。2、pom.xml配置jar在maven本地倉庫的坐標后jar會上傳到中央倉庫。這樣理解也對,但不夠深入。

”小朋友,你是不是 ?有很多問號?“本次是教大家入門,想深入了解maven,敬請等待下次分享。

一、maven的有優點與弊端

優缺點是我從網上摘抄的,沒毛病。

優點如下:

1、簡化了項目依賴管理。

2、易于上手,對于新手可能一個"mvn clean package"命令就可能滿足他的工作。

3、便于與持續集成工具(jenkins)整合。

4、便于項目升級,無論是項目本身升級還是項目使用的依賴升級。

5、有助于多模塊項目的開發,一個模塊開發好后,發布到倉庫,依賴該模塊時可以直接從倉庫更新,而不用自己去編譯。

6、maven有很多插件,便于功能擴展,比如生產站點,自動發布版本等

缺點如下:

1、maven是一個龐大的構建系統,學習難度大

2、maven采用約定優于配置的策略(convention over configuration),雖然上手容易,但是一旦出了問題,難于調試。

3、當依賴很多時,m2eclipse 老是搞得Eclipse很卡。

4、中國的網絡環境差,很多repository無法訪問,比如google code, jboss 倉庫無法訪問等。

二、使用maven好處

1、 maven不僅是構建工具,它還是依賴管理工具和項目管理工具,提供了中央倉庫(也可以是私有倉庫),能夠幫我們自動下載構件。

2、為了解決的依賴的增多,版本不一致,版本沖突,依賴臃腫等問題,它通過一個坐標系統來精確地定位每一個構件(artifact)。

3、還能幫助我們分散在各個角落的項目信息,包括項目描述,開發者列表,版本控制系統,許可證,缺陷管理系統地址。

4、maven還為全世界的Java開發者提供了一個免費的中央倉庫,在其中幾乎可以找到任何的流行開源軟件。通過衍生工具(Nexus),我們還能對其進行快速搜索。

5、maven對于目錄結構有要求,約定優于配置,項目間切換省學習成本。

三、教你快速入門

1、下載maven組件(最新版本:3.6.3)

地址:http://maven.apache.org/download.cgi

57ee1bae2e3c5f200dd889dc54ee1717.png

2、配置環境變量

網上有很多此類文章,在這里就不再過多講解。推薦:https://www.cnblogs.com/chuhongyun/p/11419014.html

大多數jar包來自國外 使用maven默認配置下載很費勁,這個時候可以在maven的配置文件(maven/config/setting.xml)里面加入以下代碼(阿里云鏡像),重新下載jar包,速度很快。

75a1207ac1eec1d139f87bf8d6e560e4.png

3、Idea配置maven

45ab44198aa035e4d54d813af702cc5b.png

自動下載

24a3737e08468865ebc5a786919c8189.png

4、項目中使用maven

df6cedd51f4f80d0b29cc0f85e6cef39.png

5、查看是否從倉庫下載

7480f7d984e1c9d9f89bd64039ee31e2.png

四、踩坑記錄

1、引入pom.xml文件中的依賴性能比較卡、慢

將setting文件中的鏡像倉庫地址改成阿里的鏡像倉庫,具體操作自行google

2、使用阿里鏡像倉庫訪問https問題

因為沒有安全證書,所以需要忽略證書,只需要設置一下即可,如下:

-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true

64af2169df105dda7b794ee59916aae4.png

五、maven常用的命令

1、創建maven普通項目

mvn archetype:create?-DgroupId=packageName?-DartifactId=projectName

2、創建Maven的Web項目

mvn archetype:create -DgroupId=packageName

????-DartifactId=webappName

????-DarchetypeArtifactId=maven-archetype-webapp

3、編譯源代碼

mvn compile

4、編譯測試代碼

mvn test-compile

5、編譯測試代碼

mvn test

6、打包

mvn package

7、清除產生的項目

mvn clean

8、生成eclipse、idea項目

mvn eclipse:eclipse

mvn idea:idea

9、查看當前項目已被解析的依賴

mvn dependency:list

10、上傳到私服

mvn deploy

11、強制檢查更新,由于快照版本的更新策略(一天更新幾次、隔段時間更新一次)存在,如果想強制更新就會用到此命令

mvn clean install-U

12、源碼打包

mvn source:jar

13、發布第三方Jar到本地庫中

mvn install:install-file -DgroupId=xxx.xx.xxxx?-DartifactId=xxx?-Dversion=0.0.1?-Dpackaging=jar -Dfile=路徑/xxx-0.0.1.jar

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/2/110050.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息