導航:首頁 > 程序命令 > maven打包war命令

maven打包war命令

發布時間:2023-03-27 11:03:49

A. 怎麼使用maven package命令

此命令包含一系列過程:validate-->compile-->test-->package;
Maven根據pom文件里packaging的配置,決定是生成jar文件還是war文件,並放到target目錄下。
(註:此命令需要在項目的根目錄(也就是pom.xml文件所在的目錄)下運行,Maven才知道打包哪個項目。)

B. java Maven打包總結(Jenkins多模塊編譯部署)

原文地址: Java Maven打包總結(Jenkins多模塊編譯部署)

依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)等7個階段。
完成了項目編譯、單元測試、打包功能,但沒有把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫和遠程maven私服倉庫

依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8個階段。
完成了項目編譯、單元測試、打包功能,同時把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫,但沒有布署到遠程maven私服倉庫

依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等9個階段。完成了項目編譯、單元測試、打包功能,同時把打好的可執行jar包(war包或其它形式的包)布署到本地maven倉庫和遠程maven私服倉庫

可以看到主要區別在把生成的jar包最終存放的位置, package只管打包; install把打好的包放到了本地maven倉庫;deploy是同時放到本地倉庫和遠程maven私服

這里本地倉庫默認是 /root/.m2/repository/ ,具體配置在 ${M2_HOME}/conf/settings 的 localRepository 配置項決定。遠程私服倉庫一般是nexus,具體地址在項目的pom.xml中配置。比如

一般是進入父級目錄之後執行

如果是多級目錄的話,有時候並不一定是按照 具體的項目來 編譯,比如

這個時候如果一個項目一個項目來編譯會超級多,很繁瑣,這里是按照 subparentproject 來編譯,命令如下

有個注意的地方:
subparentproject 目錄下的pom.xml文件中一定有類型如下的配置

1、需要安裝插件 Extended Choice Parameter Plug-In 可以支持參數單選、多選
2、項目選擇"自由風格",而不是maven編譯
3、在「構建」 -> "執行shell" 中編寫 子模塊編譯腳本及其後續處理

具體配置如下圖

「構建」 -> "執行shell" 中的處理腳本

附加:

Linux Bash下字元串操作總結

C. Maven 是怎樣創建War 包

轉載 最近在網上看到一篇介紹maven基礎知識的文章,覺得對初學Maven的朋友一定有幫助。水平有限,翻譯的不好,請大家見諒。
介紹
在處理WEB應用的時候,最終使用的工程文件是以War包的形式交付。Maven編譯系統可以輕松的創建War包。接下來就讓我們看看Maven是如何把一個源文件的工程轉換成War包的。
Maven 版本 Apache Maven 3.0.4

工程實例
讓我們來看看這個非常典型的Maven化的WEB工程

對應的POM.xml如下:

我們用此命令War包
1 mvn package

War生成在根目錄下
1 /target/myprojectname.war
如下圖,概況Maven生成War包過程

Maven 默認配置
我們都知道Maven可以很容易的把源文件工程創建為War包,但是POM文件中什麼也沒有設置。這是怎麼回事啊?實際上Maven有自己默認的設置。這稱之為 「convention over configuration」,Maven在配置中提供默認值。
第一,因為有一些Maven插件本身就與Maven 的生命周期綁定在一起。例如,在編譯階段使用
compiler:compile 作為默認命令。這就意味著當執行到編譯階段compiler plugin 被調用執行。如果選擇生成WAR,那麼 war:war 會與這個階段綁定。
第二,當沒有明確設置參數的時候,插件都會有自己默認值。例如 compiler:compile 目標有個參數是 compilerId。當默認值是 javac就意味著JDK 會被使用。當需要生成其他形式時可以重寫此配置。
第三,一些設置包含在 Super POM,此文件是POM文件默認繼承的。從Mavne3 起 Super POM 被放在
1 maven_dir/lib/maven-model-builder-3.0.3.jar:org/apache/maven/model/pom-4.0.0.xml
在這里我們可以發現很多默認的配置信息

Maven 生命周期
在我們的工程中,當執行 mvn package 命令,maven會執行它整個生命周期中的六個階段
1 process-resources, compile, process-test-resources, test-compile, test and package
每個階段會包含一個或多個目標。Maven 插件提供目標:一個插件可以有一個或多個目標。例如
Compiler 插件有兩個目標:compiler:compile 和 compiler:testCompile
我們可以使用 mvn help:describe -Dcmd=phasename 命令列出如下內容

下面讓我們看看每個目標
1.resources:resources
此目標用來將資源文件夾下的內容拷貝到輸出目錄
2.compiler:compile
此目標編譯源項目工程

3.resources:testResources
此目標拷貝測試資源到測試輸出目錄

4.compiler:testCompile
此目標編譯測試項目

5.surefire:test

此目標執行工程的單元測試,編譯的測試類放在 /target/test-classes

6.war:war
此目錄創建War包。它會把所有需要的文件放在
1 /target/myprojectname/
而後將他們打包生成 **.war。其中一個步驟是將 /src/main/webapp/ 拷貝到輸出目錄。

War插件另外一個重要步驟是拷貝Class文件到到 WEB-INF/classes目錄和項目所依賴的jar包到 WEB-INF/lib目錄。
默認情況下,插件還包含兩個Maven描述文件:
META-INF/maven/${groupId}/${artifactId}/pom.xml
pom.properties 文件,META-INF/maven/${groupId}/${artifactId}/pom.properties

1 #Generated by Maven
2 #Sat May 12 00:50:42 CEST 2012
3 version=1.0-SNAPSHOT
4 groupId=mygroup.com
5 artifactId=myprojectname

最終的War包放在/target/目錄下。
項目依賴
pom.xml文件會有一個默認的(JUnit)依賴。我們可以加另外一個常用的Jar log4j。
1
2 log4j
3 log4j
4 1.2.16
5
當沒有設置依賴范圍 ( scope),默認為 compile scope。這就意味著此依賴在編譯、測試、運行階段都可以得到。
只要是運行中會用到的jar包,都會拷貝到 /WEB-INF/lib目錄

轉載

D. 如何將maven 打包成war

如果你是maven web項目,直接用 mvn clean package命令就可以在target目錄下生成war包。

E. Maven 是怎樣創建War 包

工程實例
讓我們來看看這個非常典型的Maven化的WEB工程

對應的POM.xml如下:

我們用此命令War包
1 mvn package

War生成在根目錄下
1 /target/myprojectname.war
如下圖,概況Maven生成War包過程

Maven 默認配置
我們都知道Maven可以很容易的把源文件工程創建為War包,但是POM文件中什麼也沒有設置。這是怎麼回事啊?實際上Maven有自己默認的設置。這稱之為 「convention over configuration」,Maven在配置中提供默認值。
第一,因為有一些Maven插件本身就與Maven 的生命周期綁定在一起。例如,在編譯階段使用
compiler:compile 作為默認命令。這就意味著當執行到編譯階段compiler plugin 被調用執行。如果選擇生成WAR,那麼 war:war 會與這個階段綁定。
第二,當沒有明確設置參數的時候,插件都會有自己默認值。例如 compiler:compile 目標有個參數是 compilerId。當默認值是 javac就意味著JDK 會被使用。當需要生成其他形式時可以重寫此配置。
第三,一些設置包含在 Super POM,此文件是POM文件默認繼承的。從Mavne3 起 Super POM 被放在
1 maven_dir/lib/maven-model-builder-3.0.3.jar:org/apache/maven/model/pom-4.0.0.xml
在這里我們可以發現很多默認的配置信息

Maven 生命周期
在我們的工程中,當執行 mvn package 命令,maven會執行它整個生命周期中的六個階段
1 process-resources, compile, process-test-resources, test-compile, test and package
每個階段會包含一個或多個目標。Maven 插件提供目標:一個插件可以有一個或多個目標。例如
Compiler 插件有兩個目標:compiler:compile 和 compiler:testCompile
我們可以使用 mvn help:describe -Dcmd=phasename 命令列出如下內容

下面讓我們看看每個目標
1.resources:resources
此目標用來將資源文件夾下的內容拷貝到輸出目錄
2.compiler:compile
此目標編譯源項目工程

3.resources:testResources
此目標拷貝測試資源到測試輸出目錄

4.compiler:testCompile
此目標編譯測試項目

5.surefire:test

此目標執行工程的單元測試,編譯的測試類放在 /target/test-classes

6.war:war
此目錄創建War包。它會把所有需要的文件放在
1 /target/myprojectname/
而後將他們打包生成 **.war。其中一個步驟是將 /src/main/webapp/ 拷貝到輸出目錄。

War插件另外一個重要步驟是拷貝Class文件到到 WEB-INF/classes目錄和項目所依賴的jar包到 WEB-INF/lib目錄。
默認情況下,插件還包含兩個Maven描述文件:
META-INF/maven/${groupId}/${artifactId}/pom.xml
pom.properties 文件,META-INF/maven/${groupId}/${artifactId}/pom.properties

1 #Generated by Maven
2 #Sat May 12 00:50:42 CEST 2012
3 version=1.0-SNAPSHOT
4 groupId=mygroup.com
5 artifactId=myprojectname

最終的War包放在/target/目錄下。
項目依賴
pom.xml文件會有一個默認的(JUnit)依賴。我們可以加另外一個常用的Jar log4j。
1
2 log4j
3 log4j
4 1.2.16
5
當沒有設置依賴范圍 ( scope),默認為 compile scope。這就意味著此依賴在編譯、測試、運行階段都可以得到。
只要是運行中會用到的jar包,都會拷貝到 /WEB-INF/lib目錄

F. maven工程怎麼打包成war

右鍵項目,選擇Run
As,再選擇Maven
build...,這時會彈出個新界面,在Goals里輸入clean
package,然後點擊Run就行了,打包好的項目放在target文件夾下面。
clean
package是maven的一個命令,意思是測試並打包,它還有很多命令,這里就不多說了。

G. Maven 打包war 的問題!急!!

這是Eclipes插件問題,報錯李畢冊了,哪宏eclipse-maven-plugins插數如件錯誤。
建議在dos里打包,直接到dos執行 maven clean install 即可生成jar。

H. maven如何打WAR包,看到target目錄下面會生成JAR包,如何改成WAR

war插件有個標簽<packagingExcludes>意思是打包時不包含哪些文件,寫具體的文件或目錄,多個用逗號隔開。
例子:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.2</version>
<configuration>
<webappDirectory>WebContent</webappDirectory>
<!-- 必須指定,否則默認會變成在target/war/work 導致被打包進war文件,指定後為target/work -->
<workDirectory>${project.build.directory}/work</workDirectory>
<useCache>false</useCache>
<packagingExcludes>WEB-INF/classes/**/*.*,WEB-INF/lib/**/*</packagingExcludes>
<archive>
<addMavenDescriptor>true</addMavenDescriptor>
</archive>
</configuration>
</plugin>

I. 如何用maven的eclipse插件打包

現在一般都使用Maven來管理工程,包括依賴的jar包,依賴的jar包,只需要在pom.xml的元素中添加項,每一個項都是一個依賴的jar包。
當開發完之後,需要打包成可執行的jar包,那麼在eclipse中如何使用Maven打包呢,並且包含POM.xml中依賴的jar包?兩個步驟:

J. maven打包代碼行git作者

1、首先需要在開始-運行-cmd,打開cmd命令窗口。
2、其次執行命令切換到工程所在目錄,命令如下「cdD:GitHome「,」d:「。執行完成後,即會切換到「D:GitHome」悄咐仿目錄啟纖下。
3、使用命令打包,命令為「mvncleanpackage」,此時會將當前工程執行打包簡磨操作,打包成功後會生成*.war形式的war包。
4、最後進行打包操作,時間長短會由工程大小來決定,執行完成後,cmd會回到顯示之前切換的路徑狀態打包代碼行git作者即完成。

閱讀全文

與maven打包war命令相關的資料

熱點內容
lua中的android 瀏覽:441
加密貴還是植發貴 瀏覽:662
陽光壓縮機繼電器 瀏覽:969
修改阿里雲伺服器密碼 瀏覽:815
lk4102加密晶元 瀏覽:588
怎麼更改app店面 瀏覽:489
設備部門如何做好伺服器 瀏覽:849
androido下載 瀏覽:478
神奇高量戰法副圖源碼 瀏覽:830
匯編語言設計凱撒密碼加密器 瀏覽:392
主次梁加密是加在哪裡 瀏覽:664
模板匹配演算法matlab 瀏覽:825
外地程序員去北京 瀏覽:24
安卓機換蘋果12如何轉移數據 瀏覽:420
互聯網ntp伺服器地址及埠 瀏覽:613
pdf到word轉換器 瀏覽:269
飛行解壓素材 瀏覽:498
51單片機指令用背嗎 瀏覽:936
unityai演算法 瀏覽:834
我的世界ice伺服器如何打開pvp 瀏覽:975