【问题标题】:MyEclipse not deploying link source to WEB-INF/classesMyEclipse 未将链接源部署到 WEB-INF/类
【发布时间】:2017-02-23 06:46:53
【问题描述】:

我有一个 web 项目 web 和一个 java 项目 common

我将common 的源文件夹设置为web 的链接源,并在web 项目上使用common 中的类而没有错误。

但是当我在 tomcat 上部署 web 时,我总是得到 NoClassDefFoundError 异常。找不到common 中的某些类。当我检查部署的文件时,我发现WEB-INF/classes 中只有web 的类。但是commonweb 的类都被编译到Java Build Path 中设置的默认输出文件夹(web/target/classes)。如果我将所有这些类复制到WEB-INF/classes,一切正常。

我检查了部署程序集设置,但它已经正确。 /common(in common) 和 /src(in web) 都设置为部署路径 WEB-INF/classes

我正在使用 MyEclipse 10 和 tomcat 7.0。我该如何解决这个问题?提前致谢。

【问题讨论】:

  • 您是否尝试过让common 的输出实际上保留在common 中,而不是尝试连接输出以自行组合?当 Deployment Assembly 已经准备好为您完成繁重的工作时,您已经组合了输出目录。
  • @nitind 感谢您的回复,但 AFAIK 使用“链接源”时,所有源文件都编译在一起,就像它们来自一个项目一样。所以这些类最终应该在相同的输出路径中。也许我没有明白你的意思......

标签: java eclipse tomcat noclassdeffounderror myeclipse


【解决方案1】:

仍然不知道为什么,但我切换到另一个计划并将common 作为一个 maven 包。我通过maven将它作为依赖项导入web。现在可以了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-24
    • 1970-01-01
    • 1970-01-01
    • 2020-06-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多