【问题标题】:m2eclipse workspace resolutionm2eclipse 工作区分辨率
【发布时间】:2011-02-09 14:08:38
【问题描述】:

我正在使用 m2eclipse 在 eclipse 中管理 maven 项目。似乎在我使用的先前版本(0.9.8)中,工作区分辨率根本不起作用,但现在它也不能像我预期的那样工作。即当一个项目的“resolve dependencied from workspace”设置没有被勾选时,该项目会变成红色并且不能被构建。消息说:在本地存储库中找不到工件 xxx x.y-SNAPSHOT(或某种程度的东西)。问题是 m2eclipse 正在将有关工作空间项目的信息放入我的本地存储库中。 有没有办法改变这种行为?

附:解决方法是关闭 xxx 项目,然后 m2eclipse 将依赖关系解析为我之前在本地存储库中拥有的任何版本(即非快照版本)。

P.S.2 截图显示了我在本地仓库中的内容:

  • Eclipse 中的 Maven 存储库

alt text http://img96.imageshack.us/img96/1498/mvnrepos.png

  • 相关工件的文件系统版本

alt text http://img155.imageshack.us/img155/2999/versions.png

  • 快照目录中有什么:

alt text http://img72.imageshack.us/img72/120/snapshotq.png

【问题讨论】:

    标签: eclipse maven-2 dependencies m2eclipse


    【解决方案1】:

    似乎在我使用的先前版本 (0.9.8) 中,工作区分辨率根本不起作用,但现在它也不能像我预期的那样工作。

    这不是我正在经历的。我有一个项目依赖于另一个项目并且当前正在使用工作区解析:

    alt text http://img180.imageshack.us/img180/9454/screenshot007l.png

    如果我取消选中 Resolve dependencies from Workspace projects(在 Properties > Maven 下)并应用更改,我的构建路径将变为:

    alt text http://img704.imageshack.us/img704/8869/screenshot007zh.png

    依赖项按预期变为二进制依赖项。

    【讨论】:

    • 也许问题是我在 POM 中使用了版本范围......我将重新评估这一点。从命令行启动 mvn 时使用哪个版本?
    • @Bartosz 与捕获的版本相同,1.0-SNAPSHOT。但实际上,您的问题可能是由于版本范围。我无法确认这一点,我不使用版本范围,它们产生的问题多于解决 IMO 的问题(依赖关系解析、构建可重复性等)。
    • 不,我的意思是,它是来自(可能是远程)存储库的版本还是来自工作区的版本?恕我直言,问题仍然是 m2eclipse 将有关工作区项目的信息放入本地 maven 存储库中。至于范围:一切都有其优点和缺点。到目前为止(以及在升级 m2eclipse 之前)版本范围有更多优点。
    • @Bartosz 我不确定我是否在关注你。 AFAIK,m2eclipse 没有在我的本地仓库中放置任何与 eclipse 相关的东西。你有一个例子来说明这一点吗?
    • 看看截图。 m2eclipse 这样做,并且仅在版本 > 0.9.8
    【解决方案2】:

    好的,现在我的答案是降级到版本 0.9.8,其中插件不会与本地 repo 混淆。

    【讨论】:

      猜你喜欢
      • 2012-12-21
      • 2012-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多