Intellij idea 如何在与Wildfly和IntelliJ的战争中为依赖项JAR启用资源热交换?

Intellij idea 如何在与Wildfly和IntelliJ的战争中为依赖项JAR启用资源热交换?,intellij-idea,jar,wildfly,war,hotswap,Intellij Idea,Jar,Wildfly,War,Hotswap,我得到了一个多模块maven项目,构建了一个.war并将其部署到Wildfly V14.0.1。该项目已将依赖项(.jar)捆绑到已部署的.war中 在开发过程中,我希望在运行时从每个模块重新加载类和资源文件 我使用LiveEdit、热交换(war分解等)设置Intellj,如果我更改顶级模块(war)中的类或资源,或者更改其中一个依赖项中的类,那么一切都可以正常工作 唯一不起作用的是从一个依赖项重新加载ResourceFile。例如:假设我的一个模块中有一个资源文件夹打包为jar。里面有一个名

我得到了一个多模块maven项目,构建了一个.war并将其部署到Wildfly V14.0.1。该项目已将依赖项(.jar)捆绑到已部署的.war中

在开发过程中,我希望在运行时从每个模块重新加载类和资源文件

我使用LiveEdit、热交换(war分解等)设置Intellj,如果我更改顶级模块(war)中的类或资源,或者更改其中一个依赖项中的类,那么一切都可以正常工作

唯一不起作用的是从一个依赖项重新加载ResourceFile。例如:假设我的一个模块中有一个资源文件夹打包为jar。里面有一个名为
mytext.txt
的文件,内容是“这是一个测试”。如果我在运行时访问代码中的资源,我会得到文本
“这是一个测试”
。现在,如果我将文件内容更改为
“这是一个运行时测试”
,那么输出仍然是
“这是一个测试”
。只有重新部署才能使更改生效。问题是,您丢失了会话,需要再次浏览应用程序

项目结构如下所示:

.war
|_ ui.jar
|_ db.jar
|_ service.jar
我发现以下答案表明,在wildfly中不重新加载LIB是一个问题: