目录
- 背景
- 正文内容
- 部署过程
- 遇到的问题
- 在打包时点击 package 失败,报错
- jdk版本问题
- 总结
背景
在将服务器部署到云端时遇到了一些坑,
复盘一下整个部署过程
特此记录,方便做自己查阅
正文内容
部署过程
因为我是使用 jar 包,所以就只记录这一种,以后遇到 war包再研究
- 打包
- 打好的包在 target 下
- 上传到你的阿里云服务器
- 控制台敲命令
切换到存储目录下
cd
一直运行并将报错写到nohup.txt(按照自己项目名字替换中间的名字)
nohup java -jar smart_ag-0.0.1-SNAPSHOT.jar &> nohup.txt
结束运行
1.获得进程号(默认8080)
netstat -nlp | grep 8080
2.杀死
sudo kill -9 进程号
遇到的问题
在打包时点击 package 失败,报错
Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test
平时本地项目运行正常,到了打包出问题,先不要怀疑自己有什么大的漏洞,有的话早报废,无非就是细节,细察之下,发现这两个东西下的启动类路径要一样!!!!
划重点
可能你很少点开下面那个测试类,但是如果你创建项目时嫌麻烦,把路径里的什么 com.example之类的全部去掉了你就要小心了,很可能只改了上面的,下面的还没改。解决方案:改成一样,该删的删,改挪的挪。
jdk版本问题
这里就突出了日志的重要性,不然这问题长九个头都想不到…经过检查云服务器是JDK8,那本地也得降级…
解决方案:下面几张图标明的所有地方都要确认改好!!一处不对直接吃席,没有退路可言!!!首先是这里的Project bytecode version:
这里的Moudle_SDK
pom里的配置
好耶!!!运行成功
总结
通过实际操作加深印象,复盘一下,方便自己查看