1. 程式人生 > >Maven命令與pom文件常量

Maven命令與pom文件常量

java

端碗吹水

Maven命令: Maven不單止可以在Eclipse上使用,也可以在cmd中使用命令的方式操作,雖然這樣十分麻煩,而且有一般也不會使用,但是還是得了解一些可能會用到的操作方式。 1.mvn compile命令:此命令用於編譯工程,使用此命令在cmd裏編譯工程代碼時,需要先cd進工程目錄下,不然會報錯。 使用命令編譯工程的話,工程文件夾可以【學Java,到凱哥學堂kaige123.com】自己手動創建,這個手動創建的樣式和用Eclipse創建的樣式差不多,工程文件夾下是main和test文件夾還有pom配置文件,這個pom文件裏的信息必須要配置對,基本Maven都是圍繞著這個文件進行識別的,main和test文件裏就是工程代碼和測試代碼,例如我創建一個MavenTest2的工程:

技術分享

根據規定創建好工程後開始進行編譯:

技術分享

以上是編譯成功反饋的信息 編譯的代碼:

技術分享

2.mvn test-compile命令:此命令用於測試編譯中的工程代碼,測試的話需要依賴JUnit包,所以也要配置一下pom文件,將依賴寫上去,這個包的依賴可以在中央類庫中找到,然後還需要創建src文件夾然後將main、test文件夾放進去:

技術分享

技術分享

註意:測試編譯前需要先運行mvn compile命令將依賴的JUnit包下載下來,不然會報錯:

技術分享

然後再運行mvn test-compile命令:

技術分享

測試編譯的代碼:

技術分享

3.mvn test命令:此命令用於調用測試並編譯工程代碼

技術分享

代碼測試主要是測試、驗證代碼的邏輯結果是否有問題,如果沒問題才能將工程發布出去。

4.mvn package 命令:此命令將工程打包,打包的時候會進行一個測試:

技術分享

打好的包會放在這個文件夾下:

技術分享

5.mvn jar:jar 命令:此命令只打JAR包,同樣的打好的jar包會放在target文件夾裏:

技術分享

6.mvn clean 命令:此命令用於清理工程文件

技術分享

7.mvn archetype:generate命令:此命令是使用Maven的模板骨架創建一個工程,使用此命令需要先創建一個工程文件夾,然後cd進那個文件夾才能執行這個命令。使用這個命令創建工程的話需要下載相應的包,所以需要等待一下:

然後會詢問你選擇一個數字或應用過濾器,輸入1即可:

技術分享

接著就是輸入工程相關信息:

技術分享

創建成功:

技術分享

技術分享

上面創建的是一個網頁工程,我們需要創建javase工程的話就要在選擇數字那一步輸入15,這個數字代表的是javase工程骨架:

技術分享

同樣的需要輸入這段信息:

技術分享

創建成功:

技術分享

技術分享

工程骨架自帶的工程代碼:

技術分享

以下都是Maven中工程骨架的編號: 1: internal -> appfuse-basic-jsf (創建一個基於Hibernate,Spring和JSF的Web應用程序的原型) 2: internal -> appfuse-basic-spring (創建一個基於Hibernate,Spring和Spring MVC的Web應用程序的原型) 3: internal -> appfuse-basic-struts (創建一個基於Hibernate,Spring和Struts 2的Web應用程序的原型) 4: internal -> appfuse-basic-tapestry (創建一個基於Hibernate, Spring 和 Tapestry 4的Web應用程序的原型) 5: internal -> appfuse-core (創建一個基於 Hibernate and Spring 和 XFire的jar應用程序的原型) 6: internal -> appfuse-modular-jsf (創建一個基於 Hibernate,Spring和JSF的模塊化應用原型) 7: internal -> appfuse-modular-spring (創建一個基於 Hibernate, Spring 和 Spring MVC 的模塊化應用原型) 8: internal -> appfuse-modular-struts (創建一個基於 Hibernate, Spring 和 Struts 2 的模塊化應用原型) 9: internal -> appfuse-modular-tapestry (創建一個基於 Hibernate, Spring 和 Tapestry 4 的模塊化應用原型) 10: internal -> maven-archetype-j2ee-simple (一個簡單的J2EE的Java應用程序) 11: internal -> maven-archetype-marmalade-mojo (一個Maven的 插件開發項目 using marmalade) 12: internal -> maven-archetype-mojo (一個Maven的Java插件開發項目) 13: internal -> maven-archetype-portlet (一個簡單的portlet應用程序) 14: internal -> maven-archetype-profiles () 15: internal -> maven-archetype-quickstart () 16: internal -> maven-archetype-site-simple (簡單的網站生成項目) 17: internal -> maven-archetype-site (更復雜的網站項目) 18: internal -> maven-archetype-webapp (一個簡單的Java Web應用程序) 19: internal -> jini-service-archetype (Archetype for Jini service project creation) 20: internal -> softeu-archetype-seam (JSF+Facelets+Seam Archetype) 21: internal -> softeu-archetype-seam-simple (JSF+Facelets+Seam (無殘留) 原型) 22: internal -> softeu-archetype-jsf (JSF+Facelets 原型) 23: internal -> jpa-maven-archetype (JPA 應用程序) 24: internal -> spring-osgi-bundle-archetype (Spring-OSGi 原型) 25: internal -> confluence-plugin-archetype (Atlassian 聚合插件原型) 26: internal -> jira-plugin-archetype (Atlassian JIRA 插件原型) 27: internal -> maven-archetype-har (Hibernate 存檔) 28: internal -> maven-archetype-sar (JBoss 服務存檔) 29: internal -> wicket-archetype-quickstart (一個簡單的Apache Wicket的項目) 30: internal -> scala-archetype-simple (一個簡單的scala的項目) 31: internal -> lift-archetype-blank (一個 blank/empty liftweb 項目) 32: internal -> lift-archetype-basic (基本(liftweb)項目) 33: internal -> cocoon-22-archetype-block-plain ([http://cocoapacorg2/maven-plugins/]) 34: internal -> cocoon-22-archetype-block ([http://cocoapacorg2/maven-plugins/]) 35: internal -> cocoon-22-archetype-webapp ([http://cocoapacorg2/maven-plugins/]) 36: internal -> myfaces-archetype-helloworld (使用MyFaces的一個簡單的原型) 37: internal -> myfaces-archetype-helloworld-facelets (一個使用MyFaces和Facelets的簡單原型) 38: internal -> myfaces-archetype-trinidad (一個使用MyFaces和Trinidad的簡單原型) 39: internal -> myfaces-archetype-jsfcomponents (一種使用MyFaces創建定制JSF組件的簡單的原型) 40: internal -> gmaven-archetype-basic (Groovy的基本原型) 41: internal -> gmaven-archetype-mojo (Groovy mojo 原型)

所以輸入什麽編號就會創建相應的工程骨架。 如果需要創建最簡單的java工程,需要寫具體的骨架名稱,所以選擇骨架的那一步既可以使用編號也可以【學Java,到凱哥學堂kaige123.com】使用骨架的名稱,我發現用編號的方式選擇骨架創建不了簡單的java工程,得用骨架的名稱:

技術分享

創建成功:

技術分享

技術分享

工程骨架自帶的工程代碼:

技術分享

創建完後就可以使用mvn compile進行編譯了,當然其他的測試什麽的命令也可以使用了:

技術分享

8.mvn archetype:generate -DarchetypeArtifactId=maven-archetype-quickstart命令:此命令用於選擇創建普通java工程的骨架,能夠跳過之前那些選項直接創建此骨架的工程。

技術分享

創建成功:

技術分享

技術分享

技術分享

技術分享

在Eclipse裏選擇普通java工程的骨架進行創建工程:

技術分享

技術分享

技術分享

技術分享

創建完成:

技術分享

技術分享

pom文件: 在Eclipse打開pom配置文件,首先進入的是修改工程信息的界面,這個界面可以修改工程的信息

技術分享

技術分享

技術分享

技術分享

技術分享


Maven命令與pom文件常量