常春藤解决版本来自 POM 父级的 POM 依赖项



使用Eclipse(Helios)的Ivy 2.2和IvyDE 2.2....

想要引入 spring-data-neo4j 及其默认依赖项: http://maven.springframework.org/milestone/org/springframework/data/spring-data-neo4j/2.1.0.M1

在我的常春藤文件中使用以下文件:

<dependency org="org.springframework.data" name="spring-data-neo4j" rev="2.1.0.M1"/>

以及我的设置文件中的这些解析器:

<!-- Maven springframework data milestones -->
<url name="maven.springframework.data.milestone">
  <ivy pattern="http://maven.springframework.org/milestone/org/springframework/data/[module]/[revision]/[artifact]-[revision].[ext]" />
  <artifact pattern="http://maven.springframework.org/milestone/org/springframework/data/[module]/[revision]/[artifact]-[revision].[ext]" />
</url>
<!-- Maven springframework milestones -->
<url name="maven.springframework.data.milestone">
  <ivy pattern="http://maven.springframework.org/milestone/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" />
  <artifact pattern="http://maven.springframework.org/milestone/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]" />
</url>

只有 spring-data-neo4j 工件被下拉,在 Ivy 控制台(调试级别)中没有提及父级。 查看了以下建议: http://theholyjava.wordpress.com/2011/01/26/using-ivy-with-pom-xml/

但感觉这仅适用于无法通过普通解析器访问的相对路径。 查看了 PomModuleDescriptorParser 代码,如果父模块为 null,则丢弃它可能具有的所有信息(如修订信息):

 if (parentDescr != null) {
   for (int i = 0; i < parentDescr.getDependencies().length; i++) {
     mdBuilder.addDependency(parentDescr.getDependencies()[i]);
   }
 }

如果是这种情况:(1) 如何在日志中看到更多内容,以及 (2) 获取 parseOtherPom 方法来返回父级?

提前感谢 - 马修

尝试以下 ivysettings.xml 文件:

<ivysettings>
    <settings defaultResolver="maven-repos"/>
    <resolvers>
        <chain name="maven-repos">
            <ibiblio name="central" m2compatible="true"/>
            <ibiblio name="spring-milestone" m2compatible="true" root="http://maven.springframework.org/milestone"/>
        </chain>
    </resolvers>
</ivysettings>

ibiblio 解析器是配置 Maven 存储库的最佳方式。

最新更新