Mic*_*des 21 java tomcat classpath tomcat8
我有一个Tomcat应用程序,需要引用应用程序外部的一些属性文件.通常这些存储在特定地方的本地机器上C:\PROJECT_NAME\conf\
.
在Tomcat 7中,这可以通过放置一个context.xml
文件来实现,/META-INF/
其中使用了一个VirtualWebappLoader
实际上将此位置添加到应用程序类路径的文件,如下所示:
<Context>
<Loader className="org.apache.catalina.loader.VirtualWebappLoader"
virtualClasspath="/PROJECT_NAME/conf"
searchVirtualFirst="true" />
</Context>
Run Code Online (Sandbox Code Playgroud)
如何在Tomcat 8中实现同样的功能?
Mic*_*des 33
Tomcat 8迁移指南中有一节介绍了这一点,它将指导您使用资源配置
特别是,您将创建一个WebResourceRoot对象,该对象在其描述中包含以下文本.
VirtualWebappLoader - 由映射到WEB-INF/lib和WEB-INF/classes的资源前后资源替换
您的新context.xml将类似于以下内容:
<Context>
<Resources className="org.apache.catalina.webresources.StandardRoot">
<PreResources className="org.apache.catalina.webresources.DirResourceSet"
base="C:\\PROJECT_NAME\\conf"
internalPath="/"
webAppMount="/WEB-INF/classes" />
</Resources>
</Context>
Run Code Online (Sandbox Code Playgroud)