【发布时间】:2019-01-30 18:27:33
【问题描述】:
我正在尝试将同一个 Spring-Boot 应用程序的两个版本(主版本、开发版本)部署到 Tomcat 8 服务器中,但我无法加载它工作所需的 DLL。
如果我部署应用程序的单个版本(主版本或开发版本),它就像一个魅力,但如果我尝试部署另一个版本,它会抛出 java.lang.UnsatisfiedLinkError。
DLL 位于 Tomcat 的 bin 文件夹中。
看起来我无法同时从两个应用程序加载 DLL(从未听说过),或者不知何故第二个应用程序正在其他地方寻找它们...
我对每个应用程序都有不同的配置文件,并且我尝试以各种方式指定 DLL 的位置:
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Parameter name="spring.profiles.active" value="production"/>
<Parameter name="spring.config.location" value="<path to properties>"/>
<!-- This did not work -->
<Environment name="LD_LIBRARY_PATH" value="<Path to DLLs>" type="java.lang.String"/>
<!-- Neither did this -->
<Environment name="java.library.path" value="<Path to DLLs>" type="java.lang.String"/>
</Context>
有没有办法告诉 Tomcat 为每个应用程序从不同的文件夹加载 DLL?
为什么我不能为它们使用同一个 DLL?
任何帮助将不胜感激。
【问题讨论】:
标签: java spring-boot tomcat dll tomcat8