Maven項目管理工具java
Svn + eclipse 約等於 maven量級web
是apache下的一個開源項目,是純java開發,而且只是用來管理java項目的數據庫
普通的傳統項目apache
Maven項目api
分析:maven項目爲何這麼小?沒有jar。 須要jar嗎?確定須要。沒有存在於maven項目裏面,jar存在於哪?tomcat
編碼 編譯 測試(junit) 運行 打包 部署app
一個 tomcat:run就能把項目運行起來eclipse
Maven能幹的事:webapp
編譯 測試(junit) 運行 打包 部署jsp
Maven的好處:
就是對jar包的統一管理 能夠節省空間
分析:
用戶管理 訂單管理 支付管理 。。。。。
Maven的分模塊開發
互聯網項目 按業務分
傳統項目 按層分 entity dao service web
今後目錄中拷貝文件:
直接解壓到一個沒有中文沒有空格的文件夾裏解壓後的目錄以下:
Maven軟件的核心文件:
一、 要配置jdk, maven3.3.9這個版本所需的jdk版本必需要1.7以上
二、 最終要運行的是maven軟件中bin目錄的mvn命令
因此要配置maven的環境變量
在系統變量添加
環境變量的名稱:MAVEN_HOME
變量值:就是maven軟甲解壓的目錄F:\class32\apache-maven-3.3.9
三、把MAVEN_HOME添加到path裏
四、驗證maven是否配置成功:
打開dos窗口 輸入: mvn –v
三種倉庫
一、本地倉庫 本身維護
本地倉庫的配置只須要修改settings.xml文件就能夠
二、遠程倉庫(私服) 公司維護
三、中央倉庫 maven團隊維護 兩個億
三種倉庫的關係以下:
Clean 清理編譯的文件
Compile 編譯了主目錄的文件
Test 編譯並運行了test目錄的代碼
Package 打包
Install 就是把項目發佈到本地倉庫
Tomcat:run 一鍵啓動
Compile test package install deploy(發佈到私服)
三種生命週期
Clean生命週期
Clean
Default生命週期
Compile test package install deploy
Site生命週期
Site
不一樣的生命週期的命令能夠同時執行
Mvn clean package
M2e插件的安裝
Maven在eclipse的配置
一、選擇3.3.9版本的maven軟件
二、修改默認的本地倉庫地址
項目構建
一、 新建maven項目
二、調過骨架,若是不跳過骨架選擇建立出的項目目錄是不全的
二、 填寫座標
三、建立工程
四、處理紅色叉號
手動在webapp文件夾下建立一個WEB-INF文件夾,在裏面放一個web.xml文件
五、處理編譯版本
Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.5.1
在pom.xml中添加以下代碼 右鍵項目 ---》maven---》update project
<build> <!-- 配置了不少插件 --> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.5.1</version> <configuration> <source>1.8</source> <target>1.8</target> <encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </build>
五、建立一個servlet
修改web.xml
刪除重複的代碼
xmlns=http://java.sun.com/xml/ns/javaee
添加jar包
在pom中添加以下代碼:
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.9</version> <scope>test</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jsp-api</artifactId> <version>2.0</version> <scope>provided</scope> </dependency> </dependencies>
會發現jar包已添加到項目中
啓動項目
右擊項目---run as –maven build ….
Jar包的管理
需求:整合struts2 頁面上傳一個客戶id 跳轉頁面
打開maven倉庫的視圖:
一、 建立maven項目(同上)
二、 跳過骨架(同上)
三、 填寫座標信息(同上)
四、 添加web.xml文件(同上)
五、 修改編譯版本(同上)
六、 添加座標 選擇Dependencies標籤 點擊add
七、 手動輸入要添加的座標,選擇版本
八、 能夠看到 pom.xml文件中多出了以下代碼
九、 一樣的方式添加servlet-api.jar和jsp-api.jar 注意選擇scope爲provided
十、 寫action代碼
import com.opensymphony.xwork2.ActionSupport;
public class CutomerAction extends ActionSupport {
private Long custId;
public Long getCustId() {
return custId;
}
public void setCustId(Long custId) {
this.custId = custId;
}
public String findById(){
return SUCCESS;
}
}
十一、 添加struts.xml文件放到resources目錄中
內容:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <struts> <!-- 配置常量 --> <!-- 字符集 --> <constant name="struts.i18n.encoding" value="UTF-8"></constant> <!-- 開發模式 --> <constant name="struts.devMode" value="true"></constant> <!-- 通用package --> <package name="customer" namespace="/" extends="struts-default"> <action name="find" class="cn.itcast.action.CutomerAction" method="findById"> <result name="success">/jsp/info.jsp</result> </action> </package> </struts>
十二、 添加jsp頁面
1五、修改web.xml文件 添加過濾器
<filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
編譯(compile)時須要 測試時須要,,運行時須要,打包時須要
編譯(compile)時須要,測試(test)時也須要 ,運行時不須要,打包時不須要
編譯時不須要,測試時須要,,運行時須要,打包時須要
編譯時不須要,測試時須要,運行時不須要,打包也不須要
添加插件
Maven add plugin
若是用tomcat7運行用命令:
Tomcat7:run
常見問題:No compiler is provided in this environment. Perhaps you are running on a JRE
解決