23

我有一个看起来像这样的 Eclipse 项目结构:

eclipse
    project a
    project b

所有这些项目都是 Maven 项目。项目 B 是一个 Eclipse WTP 项目,并包含项目 A 作为依赖项。我正在使用 m2eclipse 插件。

当我将项目 B 部署到 Tomcat 时(全部来自 Eclipse),它总是抛出错误,说它无法从项目 A 中找到类。我可以解决这个问题的唯一方法是在 Eclipse 中关闭项目 A 并执行mvn install命令,所以此时项目 A 被视为任何其他依赖项。

我希望不必在每次对项目 A 进行更改时都重新打开然后关闭它(在这个阶段经常发生这种情况)。

我曾尝试将项目 A 添加到项目 B 的构建路径中,但这似乎并没有奏效。同样,它仅在我在 eclipse 中关闭项目时才有效,因此它被视为正常的 maven 依赖项。

仅供参考,我使用的是 Helios 版本的 Eclipse。项目 B 是一个 Spring 项目,因此 Tomcat 在导入所有 bean 等时自然会崩溃。

有没有人有什么建议?非常感谢。

4

6 回答 6

76

你需要做的是:

  1. 在 Eclipse 中,转到 Window > Show View > Servers > 并打开名为 Servers 的选项卡
  2. 在服务器中,双击您想要的服务器
  3. 此操作应打开一个标题为概述的窗口,其中您在选项卡中选择的服务器
  4. 在此窗口中选择:打开启动配置,然后单击链接。
  5. 在 Edit Configuration 窗口中,选择名为 Classpath 的选项卡
  6. 在 ClassPath 文本框中,选择以下行:User Entries
  7. 现在按下右侧标题为:添加项目的按钮
  8. 在生成的项目选择窗口中,选择您希望服务器通过单击查找的外部项目。
  9. 在您处理堆栈时,通过单击“应用”然后“确定”来关闭这些窗口
  10. 在概览窗口中重新启动服务器

你应该准备好了。这实际上只是一个2分钟的练习。祝你好运

于 2012-09-11T03:38:09.147 回答
35

如果您进入项目属性,选择“部署程序集”项,单击“添加...”并选择“项目”,您可以添加依赖项目,问题应该得到解决。

于 2012-03-11T20:44:55.473 回答
5

tomcat找不到你的类的原因是tomcat看不到eclipse中的项目依赖。要解决此问题,您可以将项目 a 的 bin 文件夹添加到从项目 b 运行的应用程序的 tomcat 类路径中。

于 2011-04-09T08:20:44.707 回答
5

右键单击添加到容器服务器的 Web 项目并选择 Maven,然后选择禁用工作区解析。然后,您的依赖项目将开始像任何其他依赖项一样显示为 jar。

右键单击 WebProject --> Maven --> 禁用工作区解析。

于 2013-05-10T08:39:26.773 回答
2

您是否安装了了解 WTP 的 m2eclipse 扩展?没有它,m2e 将无法在 WTP 项目中正常工作。看到这个:

https://docs.sonatype.org/display/M2ECLIPSE/WTP+mini+howto

于 2011-04-09T16:26:59.940 回答
0

简单的方法:

Run -> Run Configurations... -> Classpath

于 2017-03-20T13:20:09.880 回答