我正在使用 spring-boot 和 maven。我设法覆盖 jvmArguments
标记中的 java.library.path
。但是,我想将路径附加到 java.library.path
。我可以在 pom.xml
文件中执行此操作吗?
最佳答案
在生产中:在 pom 中编辑 spring-boot-maven-plugin ,添加 真的 -Djava.library.path=./libs 如果您有自动执行的 spring-boot,这会将参数添加到启动脚本中。显然,如果您在容器(例如 tomcat)内运行,则必须在那里编辑启动参数。
对于集成测试,请使用 maven-surefire-plugin,并在此处进行设置:
<configuration>
<environmentVariables>
<LD_LIBRARY_PATH>${project.basedir}/libs</LD_LIBRARY_PATH>
</environmentVariables>
<systemPropertyVariables>
<java.library.path>./libs</java.library.path>
</systemPropertyVariables>
</configuration>
取自http://maven.apache.org/surefire/maven-surefire-plugin/examples/system-properties.html
这里还设置了 LD_LIBRARY_PATH,以便可以加载 Linux 系统上的依赖库。如果您只有一个库,则不需要 <environmentVariables>
部分。
顺便说一句:如果将 java.library.path 添加到 maven 命令行,这将不起作用,因为 Surefire 会启动自己的 jvm。
关于java - 追加到 java.library.path 中 `jvmArguments` 的某个路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42706326/