【发布时间】:2019-09-19 15:18:01
【问题描述】:
当我在我的 hello world 应用程序上运行“mvn quarkus:dev”时,故意使用我们的大父 pom,我得到了这个:
[INFO] --- quarkus-maven-plugin:0.22.0:dev (default-cli) @ my-quarkus-example ---
Listening for transport dt_socket at address: 5005
Exception in thread "main" java.lang.NoClassDefFoundError: Could not initialize class org.jboss.logmanager.LogContext
at org.jboss.logmanager.LogManager.getLogger(LogManager.java:110)
at org.jboss.logmanager.LogManager.getLogger(LogManager.java:27)
at java.util.logging.LogManager.demandLogger(LogManager.java:551)
at java.util.logging.Logger.demandLogger(Logger.java:455)
...
at org.jboss.logging.Logger.getLogger(Logger.java:2490)
at io.quarkus.dev.DevModeMain.<clinit>(DevModeMain.java:43)
LogManager 和 LogContext 都驻留在 jboss-logmanager-embedded-1.0.3.jar 中。我依赖项中的版本与 quarkus 0.22.0 pom 中的版本匹配。在 IntelliJ 中,我可以点击从 LogManager 到 LogContext。我的 hello world 应用不做任何日志记录,只是一个 hello REST 服务。
“mvn 依赖:树”的结果:
[INFO] +- io.quarkus:quarkus-resteasy:jar:0.22.0:compile
[INFO] | +- io.quarkus:quarkus-undertow:jar:0.22.0:compile
...
[INFO] | | +- io.quarkus:quarkus-core:jar:0.22.0:compile
...
[INFO] | | | +- org.jboss.logging:jboss-logging:jar:3.3.2.Final:compile
[INFO] | | | +- org.jboss.logmanager:jboss-logmanager-embedded:jar:1.0.3:compile
[INFO] | | | +- org.jboss.logging:jboss-logging-annotations:jar:2.1.0.Final:compile
[INFO] | | | +- org.jboss.slf4j:slf4j-jboss-logging:jar:1.2.0.Final:compile
怎么了?
【问题讨论】:
-
你能提供整个依赖树吗?看起来很奇怪。您的
pom.xml中有任何具体内容吗? -
我正在扩展
kie-parentpom(故意的,这是内部要求)。 That pom 定义了许多依赖版本(已知它们有时彼此不一致)。我想找出问题所在,以便在编写此示例时修复 kie-parent pom。 -
@GuillaumeSmet 完整依赖树:gist.github.com/ge0ffrey/680f85f4bf8cda8c12d92618c317b07b