我尝试左右搜索,无法找到Eclipse正在使用的p2存储库格式的规范。
我有兴趣阅读p2元数据(content.xml/jar
和artifacts.xml/jar
),我想知道他们的语法,存储库布局(复合与简单等)
当然,我可以通过查看一些现有的存储库对其进行逆向工程,但我想知道是否有一个文档详细描述了这一点。
答案 0 :(得分:5)
这些文件的格式不被视为API,因此没有规范。这些实际上只是p2存储库的一种格式,如果您愿意,可以插入自己的格式。存储库格式的唯一API是IMetadataRepository和IArtifactRepository的实现。
如果您想处理这些文件,我建议加载存储库(使用IMetadataRepositoryManager和IArtifactRepositoryManager)并使用这些接口公开的API。
答案 1 :(得分:1)
是的,没有OSGi,p2几乎无法使用。但是,如果您需要使用p2 API的小命令行应用程序示例,我建议您查看p2diff。您还可以找到以下链接:Query Language for p2。如果你真的不喜欢使用Equinox,你可能会尝试查看org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryIO.Parser
和org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepositoryIO.Parser
- 它毕竟只是XML(尽管很复杂)。