1.背景介绍

现场客户反馈微服务jar包程序启动不了,卡死在启动的步骤:

修改Jar包启动时占用的临时目录_临时文件

查看磁盘和内存,空间应该足够使用:

修改Jar包启动时占用的临时目录_程序启动_02

修改Jar包启动时占用的临时目录_程序启动_03

查看程序日志:

修改Jar包启动时占用的临时目录_程序启动_04

一开始以为是项目所在目录的磁盘空间不足,但排查发现项目已经挪到了最大的磁盘中。仔细分析日志,发现是不能在临时目录/tmp中创建Java程序启动时的临时文件。那问题就很清楚了,一种方式是删除/tmp目录下的所有文件,另一种是修改Java程序启动时的临时文件存放目录。如果使用第一种方式的话,后期可能还需要再次清理空间。最终采用第二种方式。

2.解决方案

修改jar包的启动命令,指定临时文件存放目录,例如:

java -Djava.io.tmpdir=/usr/local/temp/ -jar user-service-1.0.jar