将 Jetty 与 Cobertura 检测类一起使用时出现异常

发布于 2024-12-14 13:30:15 字数 193 浏览 1 评论 0原文

当使用 Cobertura 的检测类运行 Jetty 时,出现以下异常:

NoSuchMethodError: org.apache.log4j.xml.XMLLayout.setProperties(Z)V

可能是因为 Cobertura 正在使用 log4j 而导致版本冲突吗? 这种情况我该怎么办?

When running Jetty with the instrumented classes by Cobertura, I get the following exception:

NoSuchMethodError: org.apache.log4j.xml.XMLLayout.setProperties(Z)V

Could it be because of version conflicts because the log4j Cobertura is using?
What should I do in the case?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

弱骨蛰伏 2024-12-21 13:30:15

似乎将 cobertura-runtime 工件添加到我的 pom 中,而不是 cobertura 工件解决了这个问题。引入 cobertura-runtime 是为了在运行 Web 应用程序时删除 log4j 依赖项。

这是我添加的依赖项:

<dependency>
    <groupId>net.sourceforge.cobertura</groupId>
    <artifactId>cobertura-runtime</artifactId>
    <version>1.9.4.1</version>
    <type>pom</type>
</dependency>

太棒了!

It seems that adding the cobertura-runtime artifact to my pom and not the cobertura artifact solved this issue. cobertura-runtime was introduced in-order to remove the log4j dependency while running your webapp.

This is the dependency I've added:

<dependency>
    <groupId>net.sourceforge.cobertura</groupId>
    <artifactId>cobertura-runtime</artifactId>
    <version>1.9.4.1</version>
    <type>pom</type>
</dependency>

Great!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文