一尘不染

在Tomcat 8中将外部资源添加到类路径

tomcat

我有一个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>

如何在Tomcat 8中实现同一目的?


阅读 464

收藏
2020-06-16

共1个答案

一尘不染

Tomcat
8迁移指南中
有关于此内容的部分,它将指导您使用资源配置。

特别是,您将创建一个WebResourceRoot对象,该对象的说明中包含以下文本。

VirtualWebappLoader-替换为映射到WEB-INF / lib和WEB-INF / class的资源前和资源后

您的新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>
2020-06-16