更新時(shí)間:2018-09-12 來源:黑馬程序員JavaEE培訓(xùn)學(xué)院 瀏覽量:
JavaEE就業(yè)筆記串講---Maven-part2
1Maven依賴管理
1.1坐標(biāo)定義
maven對(duì)每個(gè)工程通過坐標(biāo)管理。
groupId:定義當(dāng)前Maven項(xiàng)目名稱
artifactId:定義項(xiàng)目模塊
version:定義當(dāng)前項(xiàng)目的當(dāng)前版本
1.2查詢其它構(gòu)件的坐標(biāo)
1、通過互聯(lián)網(wǎng)搜索
2、通過本地倉(cāng)庫(kù)搜索(學(xué)習(xí))
依賴范圍scope(重點(diǎn)理解)
1、compile 編譯、測(cè)試、運(yùn)行,A在編譯時(shí)依賴B,并且在測(cè)試和運(yùn)行時(shí)也依賴。
strus-core、spring-beans
打到war包或jar包。
2、provided 編譯、和測(cè)試有效,A在編譯和測(cè)試時(shí)需要B。
比如:servlet-api就是編譯和測(cè)試有用,在運(yùn)行時(shí)不用(tomcat容器已提供)。
不會(huì)打到war。
3、runtime:測(cè)試、運(yùn)行有效。
比如:jdbc驅(qū)動(dòng)包 ,在開發(fā)代碼中針對(duì)java的jdbc接口開發(fā),編譯不用。
在運(yùn)行和測(cè)試時(shí)需要通過jdbc驅(qū)動(dòng)包(mysql驅(qū)動(dòng))連接數(shù)據(jù)庫(kù),需要的??!
會(huì)打到war。
4、test:只是測(cè)試有效,只在單元測(cè)試類中用。
比如:junit
不會(huì)打到war。
按照依賴強(qiáng)度,由強(qiáng)到弱來排序:(理解)
compile> provided> runtime> test
1.3傳遞依賴(理解)
1.3.1什么傳遞依賴
A依賴B,B依賴C,在A中加入B的坐標(biāo),自動(dòng)導(dǎo)入C的jar包,稱C為A傳遞依賴。
1.3.2傳遞依賴與范圍(理解)
1、縱坐標(biāo):直接依賴
A依賴B,B是A的直接依賴。
在A的pom.xml中添加B的坐標(biāo)。
2、橫坐標(biāo):傳遞依賴
B依賴C,C是A的傳遞依賴。
3、中間部分:傳遞依賴的范圍,A依賴C的范圍。
1.4小結(jié)
maven是項(xiàng)目管理工具,使用maven進(jìn)行java項(xiàng)目構(gòu)建!
每個(gè)maven工程包括一個(gè)pom.xml文件。
pom.xml基本配置:
1、坐標(biāo)
groupid 項(xiàng)目名稱
artifactid:模塊名稱
version:模塊版本
2、依賴管理
dependency
groupid 項(xiàng)目名稱
artifactid:模塊名稱
version:模塊版本
3、build,構(gòu)建配置
主要配置插件,編譯、tomcat插件。
maven的運(yùn)行依賴倉(cāng)庫(kù)包括:
1、本地倉(cāng)庫(kù),緩存
2、遠(yuǎn)程倉(cāng)庫(kù)
3、中央倉(cāng)庫(kù),是特殊的遠(yuǎn)程倉(cāng)庫(kù),是maven軟件默認(rèn)遠(yuǎn)程倉(cāng)庫(kù)的地址
當(dāng)向工程加入一個(gè)依賴,先從本地倉(cāng)庫(kù)找,如果找不到再?gòu)倪h(yuǎn)程倉(cāng)庫(kù)找。
依賴管理:
1、依賴范圍
由強(qiáng)到弱:compile(編譯、測(cè)試、運(yùn)行有效)》provided(編譯、測(cè)試)》runtime(測(cè)試、運(yùn)行有效)》test(測(cè)試)
2、傳遞依賴
A依賴B,B依賴C,C就是A的傳遞依賴。
3、傳遞依賴范圍
1.5依賴版本沖突解決
1.5.1依賴調(diào)解原則(了解)
maven自己提供依賴調(diào)解原則:
1、第一聲明者優(yōu)先原則
2、路徑近者優(yōu)先原則
1.5.2鎖定版本(推薦使用)
2使用maven構(gòu)建ssh整合工程
2.1創(chuàng)建maven(web工程)
2.1.1選擇原型,web工程要選擇webapp.
2.1.2引入servlet-api的jar
2.1.3修改web.xml
[XML] 純文本查看 復(fù)制代碼
?
1
2
3
4
5
6
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee [url=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd]http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd[/url]"
id="WebApp_ID" version="2.5">
</web-app>
2.2準(zhǔn)備環(huán)境
數(shù)據(jù)庫(kù)環(huán)境:
創(chuàng)建maven數(shù)據(jù)庫(kù):
導(dǎo)入腳本
2.3pom.xml(重點(diǎn))
加入各層依賴jar包:
1)鎖定依賴構(gòu)件的版本
2)添加依賴
2.4工程結(jié)構(gòu)
2.5運(yùn)行web工程
tomcat:run:使用tomcat6和maven集成插件運(yùn)行。
首發(fā):http://java.itheima.com/