我们可以在常规Maven构建中使用Eclipse p2存储库中的依赖项吗?

时间:2017-11-29 07:01:43

标签: eclipse maven dependencies osgi-bundle p2

我有一个包装类型为jar的maven项目。我有很多正常的依赖关系,它们存在于m2存储库中,还有一些eclipse包依赖关系存在于p2 repo中。 我不能使用tycho编译器插件,因为它将禁止我使用m2 repo依赖项。 我尝试在pom.xml中添加p2存储库并在依赖项标记中添加依赖项 -

<repositories>
   <repository>
       <id>test</id>
       <layout>p2</layout>
       <url>file:///C:/repo/test</url>
   </repository>
</repositories>

但是它给了我错误 -

Failed to execute goal on project test-common: Could not resolve dependencies for project 
com.test.ce:test-common:jar:0.0.1: Failed to collect dependencies at
com.test.pd:com.pd.test.xml:jar:1.2.200.003: Failed to read artifact descriptor for 
com.test.pd:com.pd.test.xml:jar:1.2.200.003: Could not transfer artifact 
com.test.pd:com.pd.test.xml:jar:1.2.200.003 from/to test (file:///C:/repo/test): 
Cannot access file:///C:/repo/test with type p2 using the available connector factories: BasicRepositoryConnectorFactory: 
Cannot access file:///C:/repo/test with type p2 using the available layout factories: Maven2RepositoryLayoutFactory: 
Unsupported repository layout p2 -> [Help 1]

1 个答案:

答案 0 :(得分:1)

您可以从Maven Central(maven.org)或其他一些Maven存储库(如mvnrepository.com)解析Eclipse依赖关系,以获得直接的Maven构建。

例如,您可以找到org.eclipse.core here

有时,某些版本在Maven Central上不可用,因此您可能需要尝试找到另一个兼容版本。

This article提供了一些背景信息。