第一步 pom.xml文件中配置
我记得我刚开始打包的时候报错了,pom.xml中加上这个就可以了,写在这儿以防万一
Maven引入本地jar包,解决打包时找不到本地jar包_zhw0596的博客-CSDN博客_maven本地依赖找不到包
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
第二步 先clean删掉target文件夹,package和install都可以打包,反正我这里就一个项目,生成新的target文件夹
install 安装:使用Maven时特有的概念,指将Maven工程打包的结果存入本地仓库。
package 打包:将工程中所有目录、文件封装到一个压缩包中,Java工程:jar包;Web工程:war包。(打包成jar包或者war包由pom文件中标签决定)
举个栗子:
有a、b两个项目,b依赖a项目,而我们要编译b项目。
如果b项目依赖a项目,而a打了包(package),a.jar仅仅是打包到了a项目的target目录下。这时编译b项目,会报错找不到所依赖的a项目,说明b项目在本地仓库是没有找到它所依赖的a项目。然后,我install(安装)a项目这时,有以下日志,[INFO] Installing D:\projects\a\target\a-0.0.1-SNAPSHOT.jar to F:\repository\com\chenjun\a\0.0.1-SNAPSHOT\a-0.0.1-SNAPSHOT.jar [INFO] Installing D:\projects\a\pom.xml to F:\repository\com\chenjun\a\0.0.1-SNAPSHOT\a-0.0.1-SNAPSHOT.pom,说明a项目已安装到本地仓库了,并且是jar和pom同时安装的。这时候再去compile(编译)b项目,b编译通过。这是因为a项目的jar包打包后通过install指令安装到了本地maven库下了,b项目再次编译后就可以在本地maven库上找到且引用到他需要依赖的a项目jar包了。
第三步 直接跑一下看是否打包成功
第四步 备份在服务器上(一定记得备份在服务器上), 上传上去后,关掉之前在跑的,然后再重新跑
这里记得切换到该目录下:比如cd /app
ps -ef|grep learning 查看进程
kill 21345 杀死 java -jar learning-3.0.7.jar那个进程
再 nohup java -jar learning-3.0.7.jar &
nohup是为了生成一个输出文件,方便查看错误日志,重新跑一遍
验证war包是否打包成功略有不同,下面这位同学就很详细。。