Intellij idea 如何排除IntelliJ中重叠的java模块

Intellij idea 如何排除IntelliJ中重叠的java模块,intellij-idea,dependencies,java-module,Intellij Idea,Dependencies,Java Module,我有一个使用Gradle的SpringBoot2/Java11应用程序。当我使用gradle bootRun运行它时,它工作正常,但是如果我尝试从IntelliJ中运行它(在主类上使用正常的“run”操作,而不是运行gradle任务),它会失败,并出现以下错误: 启动层初始化期间出错 java.lang.LayerInstationException:包 com.sun.org.apache.xml.internal.security.keys.content.keyvalues in 模块xm

我有一个使用Gradle的SpringBoot2/Java11应用程序。当我使用
gradle bootRun
运行它时,它工作正常,但是如果我尝试从IntelliJ中运行它(在主类上使用正常的“run”操作,而不是运行gradle任务),它会失败,并出现以下错误:

启动层初始化期间出错 java.lang.LayerInstationException:包 com.sun.org.apache.xml.internal.security.keys.content.keyvalues in 模块
xml.security.impl
和模块
java.xml.crypto

因此,我的IntelliJ设置似乎有问题,但我对IntelliJ还比较陌生,不知道如何找到问题的根源

在调查gradle的
dependencyInsight
时,我看到对
com.sun.xml.security:xml security impl:1.0
有一个可传递的依赖项,但对
java.xml.crypto
没有依赖项

我可以通过什么检查来找出原因


现在,在使用“Build and run with”=gradle:

启动层初始化期间出错 java.lang.module.ResolutionException:模块java.activation包含 包javax.activation,模块jakarta.activation导出包 javax.activation到java.activation


使用
gradlew bootRun
可以很好地工作,因此它似乎是特定于IntelliJ中的某些内容,但我不确定是什么。

尝试排除可传递依赖项,并用
dependencyInsight
确认,但IntelliJ仍然可以同时看到这两种依赖项。为什么会看到Gradle中没有声明依赖项?请尝试使用
jdeps
分析依赖项。您正在使用哪个版本的IntelliJ?在执行主类时,IntelliJ打印已解析的完整java命令,使其在自己的运行窗口中运行。
但是IntelliJ仍然可以看到这两个命令
您是如何知道的?还有,Gradle
依赖项任务为它们显示了什么?您是否使用Java 9模块和
模块信息
?能否附加一个最小的示例项目?这样就更容易进行故障排除。您有什么设置(macOS上的首选项)|构建、执行、部署|构建工具| Gradle |使用选项构建和运行?@Andrey我知道它会看到它们,因为我仍然会在两个模块中看到有关包的错误。我对
gradlew dependencies--configuration runtimeClasspath
的输出进行了灰色搜索,但没有找到任何一个。我在模块中使用Java11。使用“=IntelliJ IDEA”构建并运行。