我有一个 java 应用程序 (.war),我使用 ${user.home}/${project.build.finalName}/index
(在 hibernate.properties 中)保存 hibernate 索引。我可以毫无问题地将它部署在 Windows 的 tomcat 中。但是当我在 linux(ubuntu 服务器 14.04)中部署时,${user.home} 将转换为 /usr/share/tomcat7/
而不是 /var/lib/tomcat7
。 tomcat 主目录(webapp 文件夹)位于 /var/lib/tomcat7/
中,因此部署将失败,因为它无法写入 /usr/share/tomcat7/
我应该使用哪个变量来引用 /var/lib/tomcat7
?
谢谢
最佳答案
嗯,有一个默认设置的系统属性,称为 catalina.home
,它指向 tomcat 安装根目录。您可以使用它(我认为,在您的情况下,它将像您想要的那样设置为/var/lib/tomcat7 )。
此外,您可以在 tomcat 启动期间通过将其添加到 CATALINA_OPTS 环境变量来设置任何系统属性。例如:
CATALINA_OPTS=-Dfoo.bar=/some/path/to/hibernate/index/var/lib/tomcat7/bin/catalina.sh 开始
(上面的意思是单行上的 bash 命令)。
关于linux 中的 java ${user.home} 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27326819/