我是OSGi和Amdatu的新手,我正在和Maven一起使用OSGi。
通常我会像这样导入捆绑包
sudo mvn pax:import-bundle -DgroupId=org.eclipse.jetty.osgi -DartifactId=jetty-osgi-boot -Dversion=9.1.3.v20140225
在大写的情况下,导入工作很棒,因为可以在maven中央存储库中找到该包。 但是maven中央存储库中没有amdatu包,所以我尝试在pom.xml中添加amdatu存储库。
<repositories>
<repository>
<id>dependencies</id>
<name>Amdatu Dependencies</name>
<url>http://repository.amdatu.org/dependencies/</url>
</repository>
<repository>
<id>snapshot</id>
<name>AmdatuSnapshots</name>
<url>http://repository.amdatu.org/snapshot/</url>
</repository>
<repository>
<id>release</id>
<name>AmdatuRelease</name>
<url>http://repository.amdatu.org/release/</
</repository>
</repositories>
我可以在Netbeans中看到添加的maven存储库,但是在浏览任何存储库时,我收到消息<No result, processing index...>
如果我在浏览器中打开链接,我可以看到带有index.xml文件的存储库。
所以我尝试安装jaxrs捆绑包,没有运气。
sudo mvn pax:import-bundle -DgroupId=org.amdatu.web.rest.jaxrs -DartifactId=org.amdatu.web.rest.jaxrs -Dversion=1.0.4
我做错了什么?我如何使用maven amdatu存储库并导入包?
谢谢!
答案 0 :(得分:1)
你做错了是假设Amdatu存储库是Maven存储库。他们不是。它们实际上是OSGi Bundle Repositories,我们在&#34; old&#34;中提供索引。 (repository.xml)和&#34; new&#34; (index.xml)格式。
在Amdatu项目中,我们不使用Maven,我们使用Bndtools进行开发,因此您必须自己提供正确的元数据(pom.xml),然后将这些包导入您自己的Maven存储库。如果有人会贡献一个工具来自动生成Maven central中正确的元数据和/或上传工件,我们很乐意接受这一点。
答案 1 :(得分:0)
我已经下载了所有软件包,并使用下一个命令将它们安装在本地maven资源库中。
mvn org.apache.maven.plugins:maven-install-plugin:2.5.1:install-file -Dfile=path-to-your-artifact-jar \
-DgroupId=your.groupId \
-DartifactId=your-artifactId \
-Dversion=version \
-Dpackaging=jar \
-DlocalRepositoryPath=path-to-specific-local-repo
我看到您已经找到了一种使用BND Tools自动生成pom.xml的方法。 https://amdatu.atlassian.net/browse/AMDATU-712