Maven无法继承存储库

时间:2013-11-11 12:22:35

标签: java maven maven-2

我的项目结构如下。

Artifact A
|- depends on hadoop-client.jar
|- cloudera repository is added to pom

的pom.xml

 <repository>
    <snapshots>
        <enabled>false</enabled>
    </snapshots>
    <releases>
        <updatePolicy>always</updatePolicy>
    </releases>
    <id>central</id>
    <name>libs-release</name>
    <url>https://repository.cloudera.com/artifactory/cloudera-repos</url>
</repository>

现在,A编译好了,已打包为jar并推送到artifactory(jfrog one)

Artifact B
|- depends on A
|- doesn't have cloudera repo in pom

的pom.xml

<dependency>
    <groupId>groupId</groupId>
    <artifactId>artifact_a</artifactId>
 </dependency>

Artifact B无法使用在A中添加的repo并在编译时出错。

"Could not find artifact org.apache.hadoop:hadoop-client:jar:2.0.0-cdh4.2.0"

我错过了什么吗? 不想在神器B的pom中添加cloudera repo。

1 个答案:

答案 0 :(得分:3)

Maven只从父POM继承存储库信息,但不从依赖项继承。 您可以创建第三个POM C,它声明存储库,A和B从中继承 - 这将起作用。

一会儿倒入同一个坑......;)