有时候我们引用了maven仓库不存在的第三方jar,项目打包后jar包里没有引用的jar,解决方法往下看。

一、目录介绍

SpringBoot项目通过idea打成jar包部署。

将项目打成jar包后,所有引用的jar都存在于BOOT-INF\lib下,

如果存在本地引用了Maven中央仓库不存在的第三方jar包,则需要在pom.xml中配置本地jar相关依赖。

二、依赖配置介绍

scope作用域必须为system(代表本地jar包)

systemPath就是jar包存放的位置

${basedir}代表项目地址,即上图D:\code\stationboot

代码如下:

<dependency>
	<groupId>com.magus</groupId>
	<artifactId>jdbc</artifactId>
	<version>3</version>
	<scope>system</scope>
	<systemPath>${project.basedir}/lib/com.magus.jdbc.jar</systemPath>
</dependency>

然后在build中配置resource

<resources>
	<resource>
		<directory>${project.basedir}/lib</directory>
		<targetPath>BOOT-INF/lib/</targetPath>
		<includes>
		    <include>**/*.jar</include>
		</includes>
	</resource>
</resources>

三、IDEA打jar包介绍

a、打包步骤

 b、jar包生成位置

四、使用ssh上传jar包到服务器

可以采用MobaXterm(Xshell和Xftp结合体),可直接拖拽上传

 五、运行jar包

nohup java -jar /root/stationBoot.jar > stationboot.log 2>&1 &

& 放在命令到结尾,表示后台运行,防止终端一直被某个进程占用,这样终端可以执行别到任务;

配合 >log 2>&1可以将标准log保存到log文件中,将错误重定向到标准输出log中;但如果终端关闭,则进程也停止运行。如 command > file.log 2>&1 & 。

nohup放在命令的开头,表示不挂起(no hang up),也即,关闭终端或者退出某个账号,进程也继续保持运行状态,一般配合&符号一起使用。

六、查看运行日志

tail -f log:实时查看

tail -n 100 log:查看最后100行

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐