用于 RedHat 的 JAVA_OPTS

标签 java tomcat redhat

我很难为 tomcat 8 的 RedHat 环境设置 JAVA_OPTS。我需要加载 tomcat 安装目录之外的属性。 文件夹结构:

----/home/tomcat -----/apache-tomcat-8 -----/remoteProperties

我想从远程属性文件夹加载属性。

setenv.sh 文件内容如下:

JAVA_OPTS="$JAVA_OPTS -DPropertyPath=/home/tomcat/remoteProperties/collections"

部署我的 war 文件后,这个路径似乎没有正确设置:

FileNotFound异常 /home/tomcat/apache-tomcat-8.0.41/bin/home/tomcat/remoteProperties/collections/properties/logging/logback.xml

只要我更改 setenv.sh 的内容并使用相对路径而不是绝对路径:

JAVA_OPTS="$JAVA_OPTS -DPropertyPath=../../remoteProperties/collections"

它按预期工作。是否可以在 JAVA_OPTS 中设置绝对路径?谢谢!

最佳答案

调试应用程序后,我注意到 FileSystemResourceLoader spring 类用于获取一些资源。然后我在文档中读到在使用绝对路径时必须放置前缀 file: 。然后我只需要将 setenv.sh 脚本的内容更改为:

JAVA_OPTS="$JAVA_OPTS -DPropertyPath=file:/home/tomcat/remoteProperties/collections"

关于用于 RedHat 的 JAVA_OPTS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46215211/

相关文章:

Java applet 不会在浏览器中绘制或接受鼠标输入,但在 Eclipse Appletviewer 中会绘制或接受鼠标输入

java - 使用 Spring Hibernate 在 Java 中处理并发

java - Java 哈希表

java - 有没有办法从 Visual Studio Code 调试 Tomcat Java 应用程序

eclipse - 在 Eclipse 中启动 Tomcat 后启动 Web 浏览器

java - 如何在jboss中修改standalone-full-ha.xml

Java 还是 Ruby,有区别吗?

apache - 具有单个 IP 的多个 tomcat 应用程序 (tomcat 9) 的多个域(Apache Web 服务器)

java - Java 和 Oracle Java for Redhat 的区别

r - 在 RedHat 上安装 R 时出现依赖项不存在的错误