以前のバージョンの Tomcat では、環境に TOMCAT_HOME と CATALINA_HOME が設定されていました。
しかし、Tomcat 7 はこれらを設定しません。また、Tomcat のルート ディレクトリを指定するレジストリも見つかりません。
プログラムでこれを取得するにはどうすればよいですか?
私の質問は Windows のみです。
以前のバージョンの Tomcat では、環境に TOMCAT_HOME と CATALINA_HOME が設定されていました。
しかし、Tomcat 7 はこれらを設定しません。また、Tomcat のルート ディレクトリを指定するレジストリも見つかりません。
プログラムでこれを取得するにはどうすればよいですか?
私の質問は Windows のみです。
たとえば、次のコードを使用して、この JAR に含まれる任意のクラスの場所を見つけることで、JAR ファイルの場所を取得できます。
Class<?> clazz = javax.servlet.Servlet.class;
ClassLoader cl = clazz.getClassLoader();
if (cl == null) {
cl = Thread.currentThread().getContextClassLoader();
}
String classLocation = cl.getResource(clazz.getName().replace('.', '/') + ".class").toString();
String jarLocation = classLocation.substring(0, classLocation.indexOf('!'));