VirtualWebappLoader或类似的WebLogic将目录添加到war的类路径?

时间:2015-02-01 20:02:17

标签: weblogic weblogic12c

如何在部署到WebLogic的war的类路径上创建一个外部目录(将部署其他jar的位置)?

我熟悉如何在Tomcat上执行此操作,方法是在context.xml中定义Loader元素,并包含指定virtualClasspath的{​​{1}}属性。

WebLogic中是否有类似的功能?

2 个答案:

答案 0 :(得分:1)

是的,weblogic可以选择在weblogic.xml中使用virtual-directory-mapping执行此操作:

<?xml version="1.0" encoding="ISO-8859-1"?>
<weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90">
  <virtual-directory-mapping>
    <local-path>C:\my\images</local-path>
    <url-pattern>*.jpg</url-pattern>
    <url-pattern>dir/*</url-pattern>
  </virtual-directory-mapping>
</weblogic-web-app>

请参阅Oracle docs here

在战争之外使用jar的其他选项包括将jar安装为shared library或者只是将jar文件包含在<domain>/lib文件夹中,以使其可供所有应用程序使用。

答案 1 :(得分:0)

您可以在应用程序的展开目录中创建名为.beabuild.txt的文件,然后将任何目录或文件映射到应用程序的目录。

使用示例

假设我们有Gradle多项目构建ExampleProject。然后.beabuild.txt看起来像:

C\:/Users/User/.gradle/caches/modules-2/files-2.1/asm/asm/1.5.3/63a2715c39c9e97f88fe371d4441a1b3493d74f9/asm-1.5.3.jar = APP-INF/lib/asm-1.5.3.jar
C\:/Users/User/.gradle/caches/modules-2/files-2.1/asm/asm-all/2.2.3/9b79af5fc90f2dca349f16b771c21a43045f97ba/asm-all-2.2.3.jar = APP-INF/lib/asm-all-2.2.3.jar
C\:/Users/repos/ExampleProject/ui/src/main/webapp = ui.war
C\:/Users/repos/ExampleProject/ui/build/classes/main = ui.war/WEB-INF/classes
C\:/Users/repos/ExampleProject/ui/build/resources/main = ui.war/WEB-INF/classes
C\:/Users/repos/ExampleProject/common/build/classes/main = APP-INF/classes
C\:/Users/repos/ExampleProject/common/build/resources/main = APP-INF/classes
在docs.oracle.com

Creating a Split Development Directory Environment

相关问题