一、指令
1、通過下述指令對maven項目進行打包
mvn clean package -Dmaven.test.skip=true
在項目的根路徑下打開指令行視窗。如下圖
需要注意的是,在settings.xml中配置的maven倉庫,需要包含pom.xml中所有依賴的jar包,不然會報錯。
需要注意的是,若當maven的環境變量是在使用者變量中進行配置的,執行mvn指令時,則會去c盤的.m下尋找settings.xml檔案。若是在系統變量中進行配置的,則會去maven的bin目錄下查找。
maven環境變量:
F:configmavenapache-maven-3.3.9
E:ProgramFilesJavajdk1.7.0_80in;%MAVEN_HOME%in;E:ProgramFilesJavajdk1.7.0_80jrein;C:Program Files (x86)VanDyke SoftwareClients;C:UsersAdministratorAppDataLocalBypassRuntm;C:UsersAdministratorAppDataRoaming
pm;C:UsersAdministratorAppDataLocalYarnin;C:UsersAdministratorAppDataLocalGitHubDesktopin
二、mvn 本地打包注意事項
1、設定settings.xml檔案
在指令行視窗執行maven指令時指定setting.xml檔案
mvn clean package --settings F:configmavensettingssettings.xml -Dmaven.test.skip=true
mvn -s F:configmavensettingssettings.xml clean package -Dmaven.test.skip=true
2、修改pom.xml檔案:若打完包沒有配置檔案(Maven項目編譯之後classes中沒有.properties等檔案),需要添加如下配置
<build>
<resources>
<resource>
<directory>src/main/config</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.dtd</include>
<include>**/*.csv</include>
<include>**/*.xml</include>
</includes>
<!--<filtering>true</filtering>-->
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.dtd</include>
<include>**/*.csv</include>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.dtd</include>
<include>**/*.csv</include>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.dtd</include>
<include>**/*.csv</include>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/sino</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.dtd</include>
<include>**/*.csv</include>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
</build>
查找指定目錄下的所有配置檔案。
3、修改catalina.bat:添加啟動參數。
如果項目需要配置啟動參數,即
執行完mvn指令後,會在target下面生成war包。
4、解壓war包并啟動tomcat
将war包放到tomcat的ROOT目錄下,解壓。
4.1 本地啟動
本地測試mvn打完的包,通過startup.bat啟動。如果系統有啟動參數,則需要在catalina.bat(tomcat的bin目錄下)中進行配置,配置格式如下:
set JAVA_OPTS="-DenvironmenTypeCode=kfTest"(這是準備金項目配置的使用者系統的環境變量)
startup.bat啟動。shutdown.bat關閉。
注意:本地啟動tomcat時,若修改了catalina.bat,會導緻idea項目無法啟動:原因如下:
若修改了catalina.bat,則idea在啟動項目時,C:UsersAdministrator.IntelliJIdea2019.2system omcatUnnamed_Reserve_main_2confCatalinalocalhost目錄下不會生成ROOT.xml檔案,而idea是通過ROOT.xml中的配置<Context path="" docBase="F:
eserveReserve_main arget
eserve" />找到項目啟動路徑的。
4.2 Linux啟動
在tomcat的bin目錄下的catalina.sh檔案裡添加啟動參數
export JAVA_OPTS="-DenvironmenTypeCode=kfTest"