How to get the Tomcat home directory in Java

Q : Is there a function in Java to retrieve the Tomcat (Catalina) home directory?

A : Yes, Tomcat home directory or Catalina directory is stored at the Java System Property environment. If the Java web application is deployed into Tomcat web server, we can get the Tomcat directory with the following command


System.getProperty("catalina.base");

mkyong

Founder of Mkyong.com, passionate Java and open-source technologies. If you enjoy my tutorials, consider making a donation to these charities.

12 Comments
Most Voted
Newest Oldest
Inline Feedbacks
View all comments
RAvish
8 years ago

How to get the server home directory in Java, lets say i want to read property file located in wildfly-10.1.0.Finalstandaloneconfiguration path.

I am looking for general solution which is applicable for all servers.

Konstantin Svichkar
10 years ago

how to specify ‘CATALINA_HOME’ path in log4j2.xml confiig file to store my logs in ?

Hareesh
7 years ago

${sys:catalina.home}/logs

Fernando Hellmann
10 years ago

I love u

ferng
12 years ago

maybe with an older version of tomcat, but not with v7.*.*

none_
12 years ago
Reply to  ferng

Why do you think? It’s working for me on Tomcat 7.

Anbazhagan
13 years ago

Hi

I am using this line System.getProperty(“catalina.base”); in coding but i through null value. Is any way to get the tomcat path thruough java?

Prateek Ashtikar
11 years ago
Reply to  Anbazhagan

Hi, System.getProperty(“catalina.base”); This line of code is also not giving correct values. Could anyone please suggest what is the problem?

dude
9 years ago

System.getProperty(“catalina.home”)

Anbazhagan
13 years ago
Reply to  Anbazhagan

I am using this line System.getProperty(“catalina.base”); in coding but it through null value. Is any way to get the tomcat path thruough java? I am using linux. I have installed tomcat in root.

anjan bacchu
14 years ago

hi there,

thanks for this info. I needed this for my work.

BR,
~A

Vinit Bhardwaj
10 years ago

You may use it.
String path =System.getenv(“CATALINA_HOME”);