【问题标题】:GWT 2.7.0, Eclipse Luna, Tomcat7, Jetty: NoClassDefFoundError: org/apache/juli/logging/LogFactory. What should go in WEB-INF/lib dir?GWT 2.7.0、Eclipse Luna、Tomcat7、码头:NoClassDefFoundError:org/apache/juli/logging/LogFactory。 WEB-INF/lib 目录应该放什么?
【发布时间】:2015-05-25 02:09:36
【问题描述】:

这个问题已经被问过很多次了,但我还没有看到有人讨论过用 Eclipse 调试 GWT。

从 GWT 2.6.0 升级到 2.6.1 和现在的 2.7.0 后,我开始收到此错误。

我可以将现在在 bin 目录中找到的 tomcat-juhli.jar 添加到类路径中并使错误消失,但随后可能会出现各种其他错误。 (贾斯珀,权限,JSTL)。

在将 jar 从类路径移动到 WEB-INF/lib 文件夹并再次返回后,我再也无法打开 Eclipse 调试透视图。

【问题讨论】:

  • 问题解决了吗?

标签: java eclipse tomcat gwt


【解决方案1】:

您在服务器代码中使用的所有 jar 必须在构建路径上在 WEB-INF/lib 文件夹中。

如果您在执行此操作时遇到其他错误,则必须处理这些错误。

【讨论】:

  • 好的,我试试把tomcat-juli.jar放到WEB-INF-lib文件夹里告诉你。谢谢!
  • 不,它们不需要在类路径上(这只会减慢开发模式并导致各种问题),但它们必须在你的构建路径上才能编译你的代码。
  • @ThomasBroyer:当然,您是对的,但这是一个术语问题。大多数人在说“添加到 Eclipse 中的类路径”时是指构建路径。我更正了我的答案。
  • 好的,现在我很困惑,我理解 Andrei Vogin 的意思是类路径(就像我项目中的 .classpath 一样。显然我不是大多数人。)那么 Eclipse 中的构建路径是什么?
  • 右键单击一个项目>构建路径>配置构建路径。另外,看看这个问题:stackoverflow.com/questions/1821571/…
【解决方案2】:

Tomcat 需要 tomcat-juli 文件来进行日志记录,通常 eclipse 或您的应用程序都不需要。

在这种情况下,正确的位置是 jakarta 等旁边的 tomcat lib 文件夹。

还应该有一个 juli 适配器 jar。

不确定这是否真的与 gwt 有关。

更新:查看有关登录 Tomcat 的此页面:http://tomcat.apache.org/tomcat-7.0-doc/logging.html

如果我正确理解您的问题,那么您的章节就是 log4j 章节。特别是。与 juli jars 的部分。您需要在eclipse中修复tomcat适配器的类路径才能修复它。

【讨论】:

  • 在 Tomcat7 中,tomcat-juhli jar 位于 bin 目录中。我不打算移动它。我还看到知道 jakarta 文件或 juhli 适配器。无论如何,我提到的错误发生在我从 2.6.0 升级 GWT 时。降级后它似乎也没有消失。
  • 更新了答案,你用gwt更新切换到tomcat 7了吗?
  • 我想就是这样……当时我正在休育儿假。无论如何,最大的阿哈(除了一个新男婴)是调试现在正在 Chrome 中进行。如果不使用 sdbg.github.io 之类的东西,仍然无法在 Eclipse 中进行调试
  • 恭喜你(为宝宝)——我认为你的问题与你调试tomcat的服务器端代码有关。编码愉快。
猜你喜欢
  • 2010-11-26
  • 1970-01-01
  • 1970-01-01
  • 2018-09-13
  • 2014-01-20
  • 2013-07-25
  • 1970-01-01
  • 2016-01-25
  • 1970-01-01
相关资源
最近更新 更多