mvn打包(八)
一、命令
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:\config\maven\apache-maven-3.3.9 E:\ProgramFiles\Java\jdk1.7.0_80\bin;%MAVEN_HOME%\bin;E:\ProgramFiles\Java\jdk1.7.0_80\jre\bin;C:\Program Files (x86)\VanDyke Software\Clients\;C:\Users\Administrator\AppData\Local\BypassRuntm;C:\Users\Administrator\AppData\Roaming\npm;C:\Users\Administrator\AppData\Local\Yarn\bin;C:\Users\Administrator\AppData\Local\GitHubDesktop\bin
二、mvn 本地打包注意事项
1、设置settings.xml文件
在命令行窗口执行maven命令时指定setting.xml文件 mvn clean package --settings F:\config\maven\settings\settings.xml -Dmaven.test.skip=true mvn -s F:\config\maven\settings\settings.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:\Users\Administrator\.IntelliJIdea2019.2\system\tomcat\Unnamed_Reserve_main_2\conf\Catalina\localhost目录下不会生成ROOT.xml文件,而idea是通过ROOT.xml中的配置<Context path="" docBase="F:\reserve\Reserve_main\target\reserve" />找到项目启动路径的。
4.2 Linux启动
在tomcat的bin目录下的catalina.sh文件里添加启动参数
export JAVA_OPTS="-DenvironmenTypeCode=kfTest"
在所有的矛盾中,要优先解决主要矛盾,其他矛盾也就迎刃而解。
不要做个笨蛋,为失去的郁郁寡欢,聪明的人,已经找到了解决问题的办法,或正在寻找。