在某些情况下,我需要使用以下命令解压缩库:
spring-boot:repackage:requiresUnpack
否则,项目中的另一个库将无法正常工作。如链接中所述,选定的库将解压缩并复制到临时目录中。如果我想使应用程序运行的时间比temp文件的到期时间更长,则将库解压缩到temp目录并不是一个好主意。文件将被删除,应用程序将停止正常运行。
到目前为止,我已经能够通过覆盖 TMP 和 TEMP 环境变量来更改位置目标位置,但从长远来看,这听起来像是一个糟糕的主意。
在这里申请任何帮助。
答案 0 :(得分:1)
这个问题不仅限于“ requiresUnpack”,这是spring-boot / tomcat处理其临时文件的方式。因此,在其他地方也可能会让您感到惊讶。
存在描述该行为的问题:https://github.com/spring-projects/spring-boot/issues/5009
解决方法:
server.tomcat.basedir
定义Tomcat基本目录。如果未指定,则使用一个临时目录。 -Djava.io.tmpdir=/var/tmp
使用其他临时目录启动应用。另一种解决方案是不解压缩库。不要将其存储在胖子罐中,而应将其存储在类路径中的某个位置。