获取JAR发布的eclipse插件

时间:2015-10-25 15:27:27

标签: eclipse

我想在Eclipse RCP应用程序中使用io.reactivex rxjava 将它作为eclipse插件获得的最佳方法是什么,包括源插件? 是否有项目进行这些转换? 它不包括在日食/轨道中 或者我需要自己做吗?

1 个答案:

答案 0 :(得分:0)

如果原始提供者没有为您制作OSGI就绪包(即向MANIFEST.MF添加少量额外位),您可以使用Eclipse Bundle Recipes(EBR)创建自己的包。

截至撰写本文时(2015年10月),Eclipse Orbit目前正在将EBR用于新捆绑包,因为它们已打包完成。但你可以自己做。希望在未来某个时候有人读到这篇文章时,EBR网站会更加完整https://www.eclipse.org/ebr/,但是现在这些幻灯片和博客文章可以帮助你开始:

基本的想法是你需要用pom.xml将它连接到Maven,看起来有点像这样:

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <artifactId>apache-commons</artifactId>
    <version>1.0.0-SNAPSHOT</version>
  </parent>
  <artifactId>org.apache.commons.codec</artifactId>
  <version>1.9.0-SNAPSHOT</version>
  <packaging>eclipse-bundle-recipe</packaging>
  <name>Apache Commons Codec</name>
  <dependencies>
    <dependency>
      <groupId>commons-codec</groupId>
      <artifactId>commons-codec</artifactId>
      <version>1.9</version>
    </dependency>
  </dependencies>
</project>

这与bnd文件一起使用,看起来有点像这样:

package-version=${version;===;${Bundle-Version}}

Export-Package: \
 *.internal*;x-internal:=true;version="${package-version}", \
 *.impl*;x-internal:=true;version="${package-version}", \
 *;version="${package-version}"

Import-Package: \
 *

然后,通过上面的简单maven调用,您可以使用OSGI包来与Eclipse RCP应用程序一起使用。

请注意,您可能会遇到如何命名要创建的软件包的问题,​​Eclipse提供了一些可能有用的准则:https://wiki.eclipse.org/Bundle_Naming