5

以下是 JBossAS 7.1 Developer Guider:

更改 ResourceBundle 位置 在以前的 AS 版本中,JBOSS_HOME/server//conf/ 在类路径中可用。因此,该位置的属性文件在应用程序的类路径中可用。

在 AS7 中,要在类路径中获取这些属性,请将它们打包到您的应用程序中。例如,如果您正在部署 .war,则将这些属性打包到 WAR WEB-INF/classes/ 文件夹中。如果您希望 .ear 中的所有组件都可以访问这些属性,则将它们打包到某个 .jar 的根目录中,并将该 jar 放在 EAR lib/ 文件夹中。

但是如果资源文件太多,这种方法就不太好了,我们无法将所有资源文件打包到jar或ear中。

对于新的类加载方法——模块。我尝试以下方法:

创建 module.xml 文件 .. 您将为 instnace custom.myconfig 选择模块名称...

<resources>
    <resource-root path="."/>
    <!-- Insert resources here -->
</resources>

<dependencies>     
</dependencies> </module>   In your jboss-deployment-structure.xml include this module to your app
<jboss-deployment-structure>
<ear-subdeployments-isolated>false</ear-subdeployments-isolated>
<deployment>
    <dependencies>
        <module name="custom.myconfig/>
    </dependencies>
    <resources>
    </resources>
</deployment>

<sub-deployment name="My_WAR.war">
    <dependencies>
        <module name="custom.myconfig" />
    </dependencies>
</sub-deployment>

https://community.jboss.org/message/723631

但是我发现你不能设置绝对路径,比如:[resource-root path=""C:\resourcefolder"]。

这意味着您还需要包含 JBossAS 7 上的所有资源文件。

在 JBossAS 5.x-6.x 上非常简单,只需要在类路径中添加像“C:\resourcefolder”这样的文件夹路径就可以了。但这在 JBossAS7 上是一项不可能完成的任务。

4

1 回答 1

2

最后,我将资源文件夹软链接到 JBossAS 7 .....

Linux:

In -s

视窗:

MKLINK /D

或者

Junction.exe
于 2012-06-07T08:48:43.727 回答