我在server / default / lib中有一个jar,其中包含Foo.class,Bar.class
在我的application / WEB-INF / classes中有相同的类,它部署在server / default / deploy中.
和Example.class使用Foo.class实例和Bar.class实例
现在的情况是,Example.class应该在我的应用程序中使用Foo.class,在default / lib jar文件中使用Bar.class.
即,如果在classes文件夹中找不到我的应用程序,则应使用应用程序clases文件夹中的类,然后应在default / lib jar文件中使用该类.
我已经定义了jboss-web.xml文件
<jboss-web>
<class-loading java2ClassLoadingCompliance="true">
<loader-repository>
com.example:eagle=web-360.jar
<loader-repository-config>java2ParentDelegation=true</loader-repository-config>
</loader-repository>
</class-loading>
</jboss-web>
web-360.jar是jar,它将是default / lib.
com.eagle:eagle没有意义.
解决方法:
看一下JBossClassLoadingUseCases.您的情况似乎是用例4(即,该类将从default / lib优先于WEB-INF / classs加载.
您似乎想要的是用例3(即WEB-INF / classes首选default / lib),在这种情况下,您应该从jboss-web.xml中省略java2ParentDelegation = true配置选项(或将其设置为false,即默认值).