SpringBoot项目部署到服务器
1.在maven项目的pom.xml添加。
<build>
<finalName>helloworld</finalName> //项目打包的名字
<plugins>
<plugin>
//一个springboot的插件在POM中加入此插件,再点击maven [install]或[repackge]就会把当前项目里所有依赖包和当前项目的源码都打成一个JAR包,同时还会将没有依赖包的JAR包也打出来,以.original的就是了
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
2.打包成jar包 。
步骤:项目右键–》run as–》maven build…–》goals输入package
即会生成在Base directory路径下。
3.将jar包放到linux的任意文件夹(可访问)下
4.输入 java -jar 文件名.jar
//关闭当前的xshell 命令界面时,再次访问就失效了
5.nohup java -jar 文件名.jar &
//nohup的意思不挂服务,常驻的意思,除非云服务器重启,那就没法了;最后一个&表示执行命令后要生成日志文件nohup.out
出现:nohup: ignoring input and appending output to ‘nohup.out’
正常情况,显目启动成功
注意:
1.如果打包的jar中的META-INF\MANIFEST.MF文件没有指定主类即运行类(MANIFEST.MF文件中无Main-Class: xxxxx)
则用java -jar 会报错。
解释:java -jar myClass.jar
执行该命令时,会用到目录META-INF\MANIFEST.MF文件,在该文件中,有一个叫Main-Class的参数,它说明了java -jar命令执行的类。
则使用java -cp xxx.jar xxx
总结:
用maven导出的包中,如果没有在pom文件中将依赖包打进去,是没有依赖包。
1.打包时指定了主类,可以直接用java -jar xxx.jar。
2.打包是没有指定主类,可以用java -cp xxx.jar 主类名称。
如 java -cp xxx.jar com.xxx.RunApplication
2.打包的jar无依赖包
使用步骤1 ,在pom.xml中配置springboot的插件
本文章仅供参考,有不周之处,请见谅。
本文参考的资料
nohup 命令:https://blog.csdn.net/jiangyu1013/article/details/81476184
java -cp & java jar的区别:
https://blog.csdn.net/sunny05296/article/details/78268464
部署:
https://blog.csdn.net/zhangxing52077/article/details/73008359
打包:
https://blog.csdn.net/puhaiyang/article/details/78380550