【问题标题】:Eclipse build path with other projectsEclipse 与其他项目的构建路径
【发布时间】:2011-11-04 08:12:18
【问题描述】:

我在 Eclipse 中有几个项目(都是 Maven 项目)和一个依赖于其余项目的主要项目(也是 Maven 项目)。我尝试通过设置java构建路径来添加这个依赖项(右键单击项目->首选项-> java构建路径->(选项卡)项目->添加)。但是执行 maven install 目标时出现问题-这是编译错误:...(类)...“无法解决”...-这绝对看起来 maven 没有从其他项目中看到我的资源。 Eclipse 只警告我这样的事情:“类路径条目 /my-subproject1 将不会被导出或发布。可能会导致运行时 ClassNotFoundExceptions。”这些警告引用到每个子项目并发生在主项目中。 Eclipse 没有错误消息。在我的主项目中,我从子项目中导入类,我可以右键单击其中一个导入并选择“打开声明”,并且从我的一个子项目中对类的有效引用 - 所以看起来 Eclipse 看到了我的来自其他项目的依赖项(在构建工作区时没有 eclipse 错误 - 只有上面提到的这些警告),但 maven 在编译时看不到它们。

您有什么想法可以解决这个问题吗?

感谢您的帮助。

【问题讨论】:

    标签: eclipse maven import dependencies project


    【解决方案1】:

    您必须在 Maven 的 pom.xml 中声明您的依赖项。 Maven 无法识别任何 Eclipse 特定配置(如构建路径等):Maven Tutorial

    如果您使用m2eclipse plugin,它将根据您的 pom.xml 配置配置您的 Eclipse 构建路径

    【讨论】:

    • 感谢您的回复。我在我的主项目 pom 中有这些依赖项,但仍然存在同样的问题:(
    • 你的主项目 pom 是一个多模块构建还是只是一个常规的 maven 项目?如果是后者,那么您必须至少为自己安装一次所有项目,以便它们显示在您的本地 maven 存储库中。
    • 所有项目都是常规的maven项目。我会尝试你的建议。谢谢
    • 我还建议您阅读有关多模块构建的文档。您的项目结构似乎是合理的。使用多模块构建,所有模块(即所有项目)都是在构建主项目时构建的。因此,如果有变化,您不必关心构建每个项目。
    【解决方案2】:

    这不是maven问题吗?

    Maven 需要从 Maven 存储库中的其他项目制作的 jar 文件。

    我对 maven eclipse 插件了解不多,但到目前为止,根据我的观察,它似乎是这样工作的。

    所以这个案例需要构建其他项目以便创建它的jar文件。

    但这需要很多时间。

    【讨论】:

    • 我认为,当你有 maven 项目时,它依赖于你在工作区中导入的其他 maven 项目 - m2e 插件会处理它。每次更改代码中的某些内容时,您都不必构建依赖项 jar。这适用于我的多模块 Web 应用程序配置(如果我更改了模块中的某些内容 - 当我在 Tomcat 上运行主 Web 项目时,我不必重建这个 jar;eclipse 会自动执行此操作)。当我转到我的主要 Web 项目的属性时 - 我可以看到,这些模块是对项目的引用(不是本地 m2 存储库上的 jar)。
    猜你喜欢
    • 1970-01-01
    • 2011-11-14
    • 2013-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-12
    相关资源
    最近更新 更多