【发布时间】:2016-05-10 07:17:11
【问题描述】:
这是一个荒谬的场景,因为我完全不知道为什么会发生这种情况。
我创建了一个 Java servlet,(maven)打包为要部署在 Tomcat server 上的 war。它在 2 台测试机器上运行良好(相信我),但是当它移动到另一台机器上时,对该 api 的任何点击都会为特定类提供NoClassDefFoundError。
我检查了 webapps 文件夹中的解压项目目录,它包含该类。
这可能是什么原因?我已经检查了所有我可以但没有任何线索的地方。我知道我自己这不是一个很清楚的问题,但这就是我所拥有的。
如果需要任何其他详细信息,请在 cmets 中询问。
编辑:(更多细节)
Tomcat版本在这台新机器上升级了...以前的机器有Apache Tomcat/7.0.59。这有Apache Tomcat/8.0.33。会不会是这个问题?
编辑:
我仍然不确定问题所在。在尝试找到问题几个小时后,我重新配置了机器...重新安装了jdk 和Tomcat 并部署在它上面并且它工作了。
【问题讨论】:
-
机器之间的linux风格/操作系统有什么变化吗?
-
你检查过 Manifest.mf 吗?
-
Linux 是一样的...都运行 CentOS
-
该类实际上可能不止一次地存在于故障机器的类路径中。
-
@AlexanderKleinhans,项目中没有 Manifest.mf 文件。
标签: java maven tomcat war noclassdeffounderror