jar包不統(tǒng)一,jar包不兼容
創(chuàng)新互聯(lián)公司主要從事成都做網(wǎng)站、網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)碾子山,十余年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220工程升級維護(hù)過程操作繁瑣
Maven的本質(zhì)是一個項目管理工具,將項目開發(fā)和管理過程抽象成一個項目對象模型(POM)
POM(Project Object Model): 項目對象模型
項目構(gòu)建:提供標(biāo)準(zhǔn)的,跨平臺的自動化項目構(gòu)建方式
依賴管理:方便快捷的管理項目依賴的資源(jar包),避免資源間的版本沖突問題
統(tǒng)一開發(fā)結(jié)構(gòu):提供標(biāo)準(zhǔn)的,統(tǒng)一的項目結(jié)構(gòu)
官網(wǎng):http://maven.apache.org
下載地址:http://maven.apache.org/download.cgi
Maven屬于綠色版軟件,解壓即安裝
依賴Java,需要配置JAVA_HOME
設(shè)置MAVEN自身的運行環(huán)境,需要配置MAVEN_HOME
測試環(huán)境配置結(jié)果
MVN
什么是坐標(biāo)?
Maven坐標(biāo)主要組成
groupId:定義當(dāng)前Maven項目隸屬組織名稱(通常是域名反寫,例如:org.mybatis)
artifactId:定義當(dāng)前Mavne項目名稱(通常是模塊名稱,例如:CRM,SMS)
version:定義當(dāng)前項目版本號
packaging:定義該項目的打包方式
junit juint 4.12
Mavne坐標(biāo)的作用
Maven啟動后,會自動保存下載的資源到本地倉庫
默認(rèn)位置
${user.name}/.m2/repository
當(dāng)前目錄位置為登錄用戶名所在目錄下的.m2文件夾中
自定義位置
D:\maven\repository
當(dāng)前目錄位置為D:\maven\repository文件夾中
在setting文件中配置阿里云鏡像倉庫
nexus-aliyun aliyun maven http://maven.aliyun.com/nexus/content/groups/public/ central
注意:在src同層目錄下
4.0.0 com.zero project-java 1.0 jar junit junit 4.12
4.3Maven項目構(gòu)建命令Maven構(gòu)建命令使用mvn開頭,后面添加功能參數(shù),可以一次執(zhí)行多個命令,使用空格分隔
mvn compile #編譯
mvn clean #清理
mvn test #測試
mvn package #打包
mvn install #安裝到本地倉庫
創(chuàng)建工程
mvn archetype:generate
-DgroupId={project-packaging}
-DartifactId={project-name}
-DarchetypeArtifactId=maven-archetype-quickstart
-DinteractiveMode=false
創(chuàng)建java工程
mvn archetype:generate
-DgroupId={project-packaging}
-DartifactId={java-project}
-DarchetypeArtifactId=maven-archetype-quickstart
-Dversion=0.0.1-snapshot
-DinteractiveMode=false
創(chuàng)建web工程
mvn archetype:generate
-DgroupId={project-packaging}
-DartifactId={web-project}
-DarchetypeArtifactId=maven-archetype-webapp
-Dversion=0.0.1-snapshot
-DinteractiveMode=false
Mavne工程目錄結(jié)構(gòu)
5.第一個Maven項目(IDEA生成) 5.1配置Maven5.2原型創(chuàng)建Web項目5.3插件4.0.0 war org.example design-mode 1.0-SNAPSHOT 8 8 javax.servlet javax.servlet-api 3.1.0 provided org.apache.tomcat.maven tomcat7-maven-plugin 2.1 80
6.依賴管理
6.1依賴配置依賴指當(dāng)前項目運行所需要的jar,一個項目可以設(shè)置多個依賴
格式:
javax.servlet javax.servlet-api 3.1.0
可選依賴指對外隱藏當(dāng)前所依賴的資源–不透明
注意:可選依賴是控制該資源不被其他人看到
javax.servlet javax.servlet-api 3.1.0 true
注意:主動斷開間接依賴的資源
javax.servlet javax.servlet-api 3.1.0 provided junit junit 4.12 org.hamcrest hamcrest-core
6.6依賴范圍scope | 主代碼 | 測試代碼 | 打包 | 范例 |
---|---|---|---|---|
compiler(默認(rèn)) | Y | Y | Y | log4j |
test | Y | junit | ||
proviede | Y | Y | servlet-api | |
runtime | Y | jdbc |
帶有依賴范圍的資源在進(jìn)行傳遞時,作用范圍將受到影響
clean生命周期
default構(gòu)建生命周期
site構(gòu)建生命周期
org.apache.maven.plugins maven-source-plugin 2.2.1 jar generate-test-resources
Maven高級
8.分模塊開發(fā)與設(shè)計
8.1工程模塊與模塊劃分8.2具體拆分步驟ssm_pojo拆分
ssm_dao拆分
ssm_service拆分
ssm_controller拆分
分模塊開發(fā)
作用:聚合用于快速構(gòu)建maven工程,一次性構(gòu)建多個項目/模塊。
制作方式:
創(chuàng)建一個空項目,打包類型定義為pom
pom
定義當(dāng)前模塊進(jìn)行構(gòu)建操作時關(guān)聯(lián)的其他模塊名稱
../ssm_controller ../ssm_service ../ssm_dao ../ssm_pojo
注意事項:參與聚合操作的模塊最終執(zhí)行順序與模塊間的依賴關(guān)系有關(guān),與配置順序無關(guān)
模塊的類型:
作用:通過繼承可以實現(xiàn)在子工程中沿用父工程中的配置
制作方式
com.zero ssm 1.0-SNAPSHOT ../ssm/pom.xml
在父工程中定義依賴管理
org.springframework spring-context 5.1.9.RELEASE
在子工程中定義依賴關(guān)系,無需聲明依賴版本,版本參照父工程中依賴的版本
org.springframework spring-context
10.3繼承的資源版本統(tǒng)一的重要性
屬性類別
屬性類別:自定義屬性
作用:等同于定義變量,方便統(tǒng)一維護(hù)
定義格式:
5.1.9.RELEASE 4.12
調(diào)用格式:
org.springframework spring-context ${spring.version}
屬性類別:內(nèi)置屬性
作用:使用Maven內(nèi)置屬性,快速配置
調(diào)用格式:
${basedir}
${version}
屬性類別:Setting屬性
作用:使用Maven配置文件setting.xml中的標(biāo)簽屬性,用于動態(tài)配置
調(diào)用格式:
${settings.localRepository}
屬性類別:Java系統(tǒng)屬性
作用:讀取Java系統(tǒng)屬性
調(diào)用格式:
${user.home}
系統(tǒng)屬性查詢方式
mvn help:system
屬性類別:環(huán)境變量屬性
作用:使用Maven配置文件setting.xml中的標(biāo)簽屬性,用于動態(tài)配置
調(diào)用格式:
${env.JAVA_HOME}
環(huán)境變量屬性查詢方式
mvn help:system
工程版本區(qū)分
工程版本
工程版本號約定
資源配置多文件維護(hù)
配置文件引用pom屬性
作用
調(diào)用格式
${jdbc.url}
定義自定義屬性
5.1.9.RELEASE 4.12 jdbc:mysql://127.0.0.1:3306/ssm_db
開啟配置文件加載pom屬性
${project.basedir}/src/main/resources true ${project.basedir}/src/test/resources true
properties配置
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=${jdbc.url}
jdbc.username=root
jdbc.password=itheima
多環(huán)境兼容
14.1定義多環(huán)境pro_evn jdbc:mysql://127.1.1.1:3306/ssm_db true dep_evn jdbc:mysql://127.2.2.1:3306/ssm_db
14.2使用多環(huán)境加載指定環(huán)境
作用
調(diào)用格式
mvn 指令 -P 環(huán)境定義id
范例
mvn install -P pro_env
跳過測試環(huán)節(jié)的應(yīng)用場景
注意:idea中并沒有Run Maven這個按鈕,需要下載插件
去setting中下載maven helper插件
下載完后,重啟一下idea就有了
15.3方式三org.apache.maven.plugins maven-surefire-plugin **/User*Test.java
16.游戲
16.1nexus服務(wù)器安裝與啟動分模塊合作開發(fā)
Nexus下載
Nexus是Sonatype公司的一款maven游戲產(chǎn)品
下載地址:https://help.sonatype.com/repomanager3/download
Nexus安轉(zhuǎn),啟動與配置
進(jìn)入安裝目錄,打開cmd
D:\sdk\nexus-3.43.0-01\bin
啟動服務(wù)器(命令行啟動)
nexus.exe /run nexus
出現(xiàn)如下圖:表示啟動成功(中間過程比較長)
訪問服務(wù)器(默認(rèn)端口:8081)
http://localhost:8081
修改基礎(chǔ)配置信息
修改服務(wù)器運行配置信息
游戲資源獲取
倉庫分類
1.登錄
2.創(chuàng)建倉庫
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-lU8JWUKY-1669996114358)(C:\Users\yanmi\AppData\Roaming\Typora\typora-user-images\image-20221129213622369.png)]
3.上傳依賴
4.刪除依賴
上傳資源時提供對應(yīng)的信息
idea環(huán)境中資源上傳與下載
訪問游戲配置(本地倉庫訪問游戲)
配置本地倉庫訪問游戲的權(quán)限(setting.xml)
heima-release admin admin heima-snapshots admin admin
配置本地倉庫資源來源(setting.xml)
alimaven aliyun maven http://maven.aliyun.com/nexus/content/groups/public/ central nexus-heima http://localhost:8081/repository/maven-public/ *
自定義的url如何查找:如下圖
16.4idaa訪問游戲與組件上傳配置當(dāng)前項目訪問游戲上傳資源的保存位置(pom.xml)
heima-release http://localhost:8081/repository/heima-release heima-release http://localhost:8081/repository/heima-snapshots
發(fā)布資源到游戲命令
mvn deploy
或者直接使用Maven生命周期方法如下:
小節(jié)
資源發(fā)布
發(fā)布命令
http://maven.aliyun.com/nexus/content/groups/public/ central nexus-heima http://localhost:8081/repository/maven-public/ *
**自定義的url如何查找:如下圖**
[外鏈圖片轉(zhuǎn)存中...(img-E6VkvjIs-1669996114359)]
### 16.4idaa訪問游戲與組件上傳
- 配置當(dāng)前項目訪問游戲上傳資源的保存位置(pom.xml)
~~~xmlheima-release http://localhost:8081/repository/heima-release heima-release http://localhost:8081/repository/heima-snapshots
發(fā)布資源到游戲命令
mvn deploy
或者直接使用Maven生命周期方法如下:
[外鏈圖片轉(zhuǎn)存中…(img-r6ZiQUeD-1669996114360)]
小節(jié)
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
文章標(biāo)題:Maven入門教程-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://www.muchs.cn/article12/pdcgc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計公司、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站維護(hù)、網(wǎng)站策劃、電子商務(wù)、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容