问题标签 [equinox]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
8675 浏览

tomcat - 无法理解整个 OSGi web 生态系统

我对整个 Java 和 OSGi 世界还很陌生,我很难理解 OSGi Web 应用程序的生态系统。

更准确地说,我目前正试图了解生态系统的所有部分是如何相互关联的:

  • OSGi 框架(例如 Apache Felix、Equinox、Knoplerfish)
  • OSGi 运行时(例如 Spring DM Server、Pax Runner、Apache Karaf)
  • Web Extender(例如 Pax Web Extender、Spring Web Extender)
  • Web 容器(例如 Apache Tomcat、Jetty)

为了让您直观地了解我对他们关系的实际理解,请查看这张图片:

替代文字

据我所知,OSGi 框架是 OSGi 规范的实现。运行时是一个发行版,它在 OSGi 规范之上添加了额外的功能,例如日志记录。由于 OSGi 和 Web 容器(如 Tomcat)的类路径机制似乎存在一些差异,因此您需要某种翻译器。这部分由“Web Extender”处理。

请您为我澄清这一切好吗?我理解的一切正确吗?

0 投票
1 回答
745 浏览

osgi - Knopflerfish packaging

I am at the moment creating a matrix which is showing how far Knopflerfish, Equinox and Felix are OSGi 4.2 compliant.

So far I looked at the Knopflerfish documentation (Link 1, Link 2) to get an idea of how much of the Core and Compendium specs are actually implemented.

The core specification seems to be fully implemented, although there are some inconsistent statements about the Security Layer and the Declarative Services.

What makes me wonder is how much of all the Compendium specs are implemented:

  • Remote Services
  • Log Service
  • Http Service
  • Device Access
  • Configuration Admin Service
  • Metatype Service
  • Preferences Service
  • User Admin Service
  • Wire Admin Service
  • IO Connector Service
  • Initial Provisioning
  • UPnP Device Service
  • Declarative Services
  • Event Admin Service
  • Deployment Admin
  • Auto Configuration
  • Application Admin
  • DMT Admin Service
  • Monitor Admin Service
  • Foreign Application Access
  • Blueprint Container
  • Tracker
  • XML Parser Service
  • Position
  • Measurement and State
  • Execution Environment

To find out more I downloaded (Download page) the source code of Knopflerfish and had a look at it. It looks like some parts of the spec are implemented through the "original" framework provided by the OSGi Alliance (org.osgi.*).

One example is the UPnP package:

alt text http://img6.imageshack.us/img6/5853/screenshot20100403at212.png

Does this mean that missing parts which are not directly implemented by Knopflerfish are added through the "original" OSGi framework?

And does this also apply to other frameworks like Felix or Equinox?

0 投票
2 回答
2703 浏览

java - com.sun.management.OperatingSystemMXBean 在 OSGi 包中的使用

我有一些遗留代码用于监控我的应用程序 cpu、内存等,我想将其转换为捆绑包。现在,当我启动这个捆绑包时,它会抱怨

我曾使用 OperatingSystemMXBean 来访问 JVM 上的统计信息。

我的问题是我可以在 OSGI 容器中使用这个类吗?如果可以,如何使用?或者我应该使用其他方式来监控我的应用程序。我正在从 Web 前端对应用程序进行 RMI 调用,以获取 OSGi 之前的节点性能数据。

0 投票
3 回答
3527 浏览

java - 如何从 Java 应用程序中使用 OSGi

我是 OSGi 的新手,但它很有趣。osgi bundles和java应用程序之间可以交互吗?如果可能,怎么做?谢谢!

背景是我有一个很大的 Java SE 应用程序(作者是另一个程序员),它有很多依赖项。首先,我的目标是添加新功能,其次是更改架构。我将尝试使用 OSGi,但我不想编写两次代码,因此我现在想将新代码编写为捆绑包。但是使用旧应用程序中的这个新功能。

0 投票
1 回答
681 浏览

java - 带有spring-DM扩展器的OSGi日志记录不记录

我的设置:我能够使用 Log4J 作为我的日志框架创建一个简单的 OSGi 包,当部署到我的 OSGi 容器(Equinox)时,它工作得很好,我的日志配置非常简单,使用单独的包片段来配置我的日志。此设置不涉及弹簧,并且效果非常好。

我的问题:我正在将一个使用 log4j 作为其日志框架的 Spring 应用程序转换为 OSGi,第一阶段是为我现在已经完成的 Spring 应用程序创建各种捆绑包。我遇到的问题是,与非 spring 应用程序一起使用的 OSGi 日志记录片段包没有配置我的 spring 启用包。

我知道捆绑包处于活动状态,因为 system.out.println 确实可以工作,但是我的所有日​​志记录配置都不起作用。我在控制台中什么也看不到我确实看到很多 spring 输出确认我的捆绑服务已公开但没有日志记录。

任何建议表示赞赏。

0 投票
1 回答
784 浏览

java - 有没有一种将 Equinox 源代码添加到 Eclipse 以帮助调试 OSGi 包的好方法?

我正对我们试图硬塞进 OSGi 包的一大堆 JNI 代码和 DLL 猛烈抨击。从系统中获取良好的调试信息特别困难,我花了太多时间单步调试原始字节码,试图推断出Equinox内部发生的事情——当我真的不在乎时——我只是没有得到有用的错误出来。如果我可以在调试器中轻松访问Equinox 源代码以查看它为什么以及在哪里加载什么,那就太好了。

下载所有源代码并构建我自己的 Eclipse 的简单答案将是一种解决方案,但感觉非常沉重。有没有我可以去安装的“抓取源”回购或类似的东西?

只是感觉应该有一种更简单的方法来解决这个问题。类似于在其他情况下使用调试库或安装 SRPM。

0 投票
1 回答
125 浏览

osgi - Equinox 3.5.2 有什么新功能?

Eclipse 和 Equinox 团队发布了 Equinox 框架的新版本,即 3.5.2。我目前正在使用 Equinox 3.5.0 并考虑升级到 Equinox 3.5.2。但是,我找不到任何提及 Equinox 3.5.2 中的新功能以及此新版本中修复了哪些错误的网站,即使在以下网站中:http: //download.eclipse.org/equinox/drops/R- 3.5.2-201002111343/index.php#Framework

是否有人对 Equinox 3.5.2 中的新功能有经验?请分享您的经验。

谢谢。

0 投票
0 回答
41 浏览

eclipse-plugin - 我可以打包我的 Eclipse 扩展,以便自动安装正确的版本吗?

有没有办法构建一个 Eclipse 更新站点,以便 Eclipse 3.3 将安装我的插件的一个版本,而 Eclipse 3.4 将安装另一个版本?功能规范允许“可选包含的功能”,但我看不出如何使它们以目标版本为条件。

背景:我负责一个 Eclipse 扩展,该扩展有六个插件,这些插件依赖于“支持”插件,并且支持插件需要是 Eclipse 3.3 的一个版本和 Eclipse 的不同版本3.4/3.5。我目前有两个独立的功能,“3.3 的扩展”和“3.4+ 的扩展”,但我不想用这个细节来打扰我的用户。

0 投票
1 回答
1340 浏览

java - Equinox config.ini 生成

我正在进行一些 osgi 插件开发。我在我的 Eclipse IDE 中创建了一个启动配置,它将所有必需的包添加到我的运行时。是否有可能将 Eclipse 启动配置导出/转换为 config.ini,我可以在独立的 Equinox 环境中使用它?

0 投票
1 回答
1716 浏览

eclipse - 在 Equinox 中是否可以将 OSGi 包标记为从其包含功能的 p2.inf 开始?

我有一个包含几个包的 Eclipse 功能。我想告诉 p2 在安装该功能时将其中一个捆绑包标记为已启动。这可以使用捆绑包自己的 META-INF/p2.inf 像这样,

但我想在功能级别而不是捆绑级别执行此操作(有问题的捆绑是第三方的,如果可能的话,我不希望以任何方式修改它)。

一些研究使我看到了这个文档,它表明应该可以将配置指令移动到包含功能的 p2.inf 中。我已经尝试了所有明显的事情,例如,

但到目前为止,我尝试过的所有排列都没有任何效果:因为没有任何反应,捆绑包没有标记为已启动,也没有报告错误)。

任何指针都会非常受欢迎。与 Eclipse Equinox Galileo (3.5.2) 一起使用......与 Helios 相关的答案也将非常有用。