Maven 依赖项正在下载较新版本的 pom 而不是 jar



我依赖于 JBoss 的 teiid 框架。如果我添加对旧版本的依赖,它会下载 jar 文件,而如果我添加对较新版本的依赖,它只会下载 pom 文件。下面是我的POM配置

存储 库:

  <repository>
    <id>jboss-public-repository-group</id>
    <url>http://repository.jboss.org/nexus/content/groups/public/</url>
  </repository>

这将下载jar

<dependency>
    <groupId>org.jboss.teiid</groupId>
    <artifactId>teiid-client</artifactId>
    <version>8.5.0.Final</version>
</dependency>

这将只下载pom文件

<dependency>
    <groupId>org.jboss.teiid</groupId>
    <artifactId>teiid-client</artifactId>
    <version>8.9.1</version>
</dependency>

更新:Maven log

[INFO] Scanning for projects...
[INFO] 
[INFO] Using the builder org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder with a thread count of 1
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building hello-teiid 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] Downloading: http://repository.jboss.org/nexus/content/groups/public/org/jboss/teiid/teiid-client/8.9.1/teiid-client-8.9.1.pom
[INFO] Downloaded: http://repository.jboss.org/nexus/content/groups/public/org/jboss/teiid/teiid-client/8.9.1/teiid-client-8.9.1.pom (2 KB at 1.4 KB/sec)
[INFO] Downloading: http://repository.jboss.org/nexus/content/groups/public/org/jboss/as/jboss-as-parent/7.4.0.Final-redhat-4/jboss-as-parent-7.4.0.Final-redhat-4.pom
[INFO] Downloading: http://repo.maven.apache.org/maven2/org/jboss/as/jboss-as-parent/7.4.0.Final-redhat-4/jboss-as-parent-7.4.0.Final-redhat-4.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.047 s
[INFO] Finished at: 2015-01-28T09:41:17-05:00
[INFO] Final Memory: 6M/123M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project hello-teiid: Could not resolve dependencies for project hello:hello-teiid:jar:0.0.1-SNAPSHOT: Failed to collect dependencies at org.jboss.teiid:teiid-client:jar:8.9.1: Failed to read artifact descriptor for org.jboss.teiid:teiid-client:jar:8.9.1: Could not find artifact org.jboss.as:jboss-as-parent:pom:7.4.0.Final-redhat-4 in jboss-public-repository-group (http://repository.jboss.org/nexus/content/groups/public/) -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException

如果你在 jboss 存储库中搜索这个工件,你可以看到在版本 8.9.1 中它的打包是"捆绑",而在 8.5.0 版本中它默认为"jar"。

现在我们已经注意到了这一点,我们可以与 @AlexandrM 的评论联系起来,OSGI 捆绑包与 jar 依赖项,

或者更具体地说,为什么 maven 找不到 osgi 捆绑依赖项?(注意第二个答案,而不是接受的答案。基本上,您需要添加一个定义它的插件,即 maven-bundle-plugin)。

最新更新