提问者:小点点

为多个战争文件配置tomcat类路径


我的tomcat7中部署了多个war文件。请告诉我如何在tomcat中配置类路径,以便每个应用程序都在tomcat的相应文件夹中查找属性文件和所有文件。例如,abc. war和xyz.war文件部署在webapp文件夹中,因此对于abc.war,它将查看/share/abc/……对于xyz,它将查看/share/xyz/……而共享文件夹仅在tomcat7中。

注意:我想要这个,因为所有的war文件都使用同名的属性文件,所以不是在代码中查找和更改(这是非常忙碌的),我希望每当请求来自abc. war时,它应该查看/share/abc…当请求来自xyz.war时,它应该查看/share/xyz/…


共2个答案

匿名用户

您不必做任何事情。对于每个war文件(Web应用程序),只有它自己的属性文件可见。

因此,请将您的属性文件放在war中,而不是共享文件夹或库中。

匿名用户

假设您想使用相同的文件名(the_file.properties)但内容不同;否则,您可以在所有应用程序中重用它,并且您并不真正需要这种“分离”。

在这种情况下,您可以执行如下操作(特定于Tomcat):

private static final String ROOT_PATH = "catalina.home";
private static final String PROPS_FILE = "the_file.properties";

File directory = new File(System.getProperty(ROOT_PATH), "path/to/props_file");
File propsFile = new File(directory, PROPS_FILE);
BufferedInputStream bufferedInputStream = new BufferedInputStream(new FileInputStream(propsFile));