使用java获取tomcat的安装目录

时间:2012-05-22 18:57:21

标签: java tomcat catalina

我想使用java在我的计算机中获取tomcat的安装目录。我尝试使用:

System.getProperty("catalina.base");

System.getProperty("catalina.home");

但两种方法都以null作为答案。我用System.getProperty("java.home");尝试了它,它正确返回了java路径。 关于问题是什么的任何想法?感谢

3 个答案:

答案 0 :(得分:1)

尝试安装此JSP并为“property”参数传递各种值:

<%
  String propertyName = request.getParameter("property");
  Object propertyValue;
  String typeString;
  if(null == propertyName)
    propertyValue = null;
  else
    propertyValue = System.getProperty(propertyName);

  if(null == propertyValue)
    typeString = "null";
  else
    typeString = propertyValue.getClass().getName();
%>
The system property <code><%= propertyName %></code> has the value:
<code><%= propertyValue %></code> (<%= typeString %>).

也许你可以找到属性值返回null的模式。

答案 1 :(得分:1)

我也遇到了和你一样的错误。但后来我意识到tomcat服务器没有运行。启动服务器后,我仍然无法获得tomcat路径 然后我意识到我正在尝试从一个JSF项目中的main方法获取路径,而tomcat仍在运行 所以我终于在 System.out.println(System.getProperty("catalina.base")); 项目中的@PostConstruct个bean之一的@ViewScoped方法中使用了JSF来获取tomcat路径。它在C:\Documents and Settings\S!LENT W@RRIOR\Application Data\NetBeans\7.2.1\apache-tomcat-7.0.27.0_base的控制台中成功显示NetBeans

因此,为了获得Tomcat的安装目录,应牢记以下几点:

  • Tomcat服务器正在运行
  • 您并未尝试从main方法
  • 获取路径

希望这会有所帮助

答案 2 :(得分:0)

我们正在使用黄瓜进行测试,在黄瓜案例中,我们正在访问项目的个别方法。在项目中,我们正在读取xml的配置,位置在Apache tomcat的config文件夹中。现在当我运行项目时,System.out.println( System.getProperty(“catalina.base”));它提供了正确的路径但是当我从黄瓜调用项目的方法然后它返回null