CentOS7配置教程(六)安裝Maven和建立Java專案、執行專案
一、安裝
前提:需要安裝好jdk
1、下載安裝檔案
在任何目錄下執行如下命令:
2、解壓安裝
tar -zxvf apache-maven-3.3.9-bin.tar.gz
mv apache-maven-3.3.9 maven-3.3.9
3、配置環境變數
vi /etc/profile
然後還需要 配置環境變數。
#在適當的位置新增
export M2_HOME=/usr/local/maven3
export PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin
4、使配置生效
儲存退出後執行下面的命令使配置生效,或者重啟伺服器生效。
source /etc/profile
5、驗證版本
mvn -v
出現maven版本即成功
6.配置阿里雲倉庫,國內速度快
在maven conf資料夾下找到setting.xml,在<mirrors>中新增如下:
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
二、CentOS上Maven的使用
2.1、建立Maven java專案
1)建立一個資料夾(MavenProject)——>該資料夾下按shift+右擊選擇在此處開啟命令視窗——>這樣建立的maven[java]專案就在該資料夾下
2)命令:mvn archetype:generate -DgroupId=com.zyh.maven.quickstart -DartifactId=simple -DarchetypeArtifactId=maven-archetype-quickstart
mvn:核心命令
archetype:create:建立專案,現在maven高一點的版本都棄用了create命令而使用generate命令了。
-DgroupId=com.zyh.maven.quickstart :建立該maven專案時的groupId是什麼,該作用在上面已經解釋了。一般使用包名的寫法。因為包名是用公司的域名的反寫,獨一無二
-DartifactId=simple:建立該maven專案時的artifactId是什麼,就是專案名稱
-DarchetypeArtifactId=maven-archetype-quickstart:表示建立的是[maven] java專案
3)執行的前提:需要聯網,必須上網下載一個小檔案
4)執行成功後
在D:\MavenProject下就會生成一個MavenJava的檔案,該檔案就是我們的maven java專案
2.2、建立Maven Web專案
1)命令:mvn archetype:generate -DgroupId=com.zyh.maven.quickstart -DartifactId=MyWebApp -DarchetypeArtifactId=maven-archetype-webapp -Dversion=0.0.1-snapshot
其他都差不多,建立maven web專案的話 -DarchetypeArtifactId=maven-archetype-webapp 比建立java專案多了一個 -Dversion=0.01-snapshot.
在建立java專案的時候也可以加上這個,如果不寫,會預設幫我們加上1.0-snapshot。
2)在D:\MavenProject下就會生成一個MyWebApp的檔案,該檔案就是我們的maven web專案
3)Maven Web專案結構
2.3、命令操作Maven java或Web專案
注意:使用命令時,必須在maven java專案的根目錄下,及可以看到pom.xml
1)編譯:mvn compile --src/main/java目錄java原始碼編譯生成class (target目錄下)
編譯成功之後,可以看到MavenJava專案的根目錄下多了一個【target】資料夾,這個資料夾就是編譯成功之後Maven幫我們生成的資料夾,
開啟【target】資料夾,可以看到裡面有一個【classes】資料夾,【classes】資料夾中存放的就是Maven我們編譯好的java類。
2)測試:mvn test --src/test/java 目錄編譯
測試成功之後,可以看到MavenJava專案的根目錄下多了一個【target】資料夾,這個資料夾就是測試成功之後Maven幫我們生成的資料夾,
開啟【target】資料夾,可以看到裡面有一個【classes】和【test-classes】資料夾
3)打包:mvn package --生成壓縮檔案:java專案#jar包;web專案#war包,也是放在target目錄下
描述:將maven java專案打包上傳到本地倉庫供別人呼叫
打包成功之後,可以看到MavenJava專案的根目錄下的【target】資料夾中多了一個MavenJava-1.jar,這個MavenJava-1.jar就是打包成功之後Maven幫我們生成的jar檔案
4)安裝:mvn install --將壓縮檔案(jar或者war)上傳到本地倉庫
安裝成功之後,首先會在MavenJava專案的根目錄下生成【target】資料夾,開啟【target】資料夾,可以看到裡面會有MavenJava-1.jar,這個MavenJava-1.jarr就是安裝成功之後Maven幫我們生成的jar檔案。
除此之外,在我們存放Maven下載下來的jar包的倉庫也會有一個Hello-0.0.1-SNAPSHOT.jar,所以Maven安裝專案的過程,實際上就是把專案進行【清理】→【編譯】→【測試】→【打包】,再把打包好的jar放到我們指定的存放jar包的Maven倉庫中。
在本地倉庫中檢視是否有該專案
通過在本地倉庫中的目錄可以發現為什麼通過groupId、artifactId、version可以定位到倉庫中得jar包,也可以知道為什麼groupId要使用公司域名的反寫(因為這樣唯一,不會與別的專案重名導致查詢到的內容不精確)
5)清理:mvn clean --刪除target目錄,也就是將class檔案等刪除
6)部署|釋出:mvn deploy --將壓縮檔案上傳私服
7)組合使用Maven命令
maven的編譯,清理,測試,打包,部署命令是可以幾個命令同時組合起來使用的,常用的命令組合如下:
mvn clean compile(先清理在打包)
mvn clean install
mvn clean test
mvn clean package
三、Maven執行Java檔案
3.1、執行Java程式
使用Maven執行Java Main的方法(既Java Application專案),可以有如下方式解決:
1、將Maven專案匯入到eclipse中,然後直接專案右鍵【Run As】->【Java Application】。
2、直接指定jar包的Main入口:
先 mvn package打成jar包
3.2、執行Java Web程式(待驗證...20180910)
pom.xml中加入Tomcat7外掛
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<path>/</path>
<port>8080</port>
<server>tomcat7</server>
</configuration>
</plugin>
然後 在pom.xml資料夾下執行 mvn clean compile,然後再執行 mvn tomcat7:run