wildfly上两个部署的共享依赖项

dfty9e19  于 2021-09-13  发布在  Java
关注(0)|答案(1)|浏览(385)

我有两个webapps,它们部署在同一个wildfly中。两个webapp都应该共享某些库,这些库不是wildfly模块的一部分。
为了使部署不依赖于特定的wildfly,我不希望通过wildfly模块系统提供共享库(我知道,用户可以定义模块)。
我的方法是简单地将库与两个webapps放在部署目录中,并在各自的jboss部署结构中引用它们。然而,这是失败的。
我试图将该库嵌入到战争中,并通过

<module name="test.war" />

由于找不到模块,因此它将无法工作。我发现了一份来自redhat的文件,它让我想到这可能会奏效:redhat
我还测试了将裸jar放在部署目录中,并通过资源根引用它:

<resources>
  <resource-root path="my-library.jar" />
</resources>

此启动集已启动,但库中的类对部署不可见。
所以我的问题是:有没有办法在wildfly上的deployments目录中部署一个库,并从ear/war部署中使用它?

iq3niunx

iq3niunx1#

这是一个简单的错误,重新阅读手册可以解决它。
如果引用来自 deployments 目录,您必须指定您这样做。那么,访问 b.war 从…起 a.war ,您必须提供一个jboss部署结构

<dependencies>
    <module name="deployment.b.war" />
</dependencies>

如果您这样做,webapp a可以访问webapp b中定义的所有java类。

相关问题