问题标签 [bndtools]
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.
java - 如何使用 Bndtools OSGi 项目创建动态 Web 项目。
我已经创建了一个生成 .jar 文件的 BndTools OSGi 项目。现在我想要在我的主项目中那个 jar 的 BundleContext ,即 Dynamic Web Project (.war File)。动态 web 项目不包含 bnd.bnd 文件。所以我无法注入该 jar 的依赖项。
有什么方法可以实现这一点。
eclipse-plugin - “uses”和“Import-Package”之间的不一致
我正在使用 bndMANIFEST.MF
为库生成。最后,我得到了一个带有以下冲突的清单:
包A
, B
,C
都驻留在单独的插件中,也称为A
,B
和C
. 在运行时,Eclipse 不加载 plugin C
,所以我遇到了崩溃。此外,Eclipse 工具似乎只查看 . Import-Package
,因为该工具也不知道对C
.
是否应该Import-Package
始终包含uses
声明中的所有包?它是一个 Eclipse 错误,还是(更有可能)我对 bnd 做错了什么,导致它错过了对 C 的依赖?
java - 包含来自非索引存储库的依赖项的问题
我正在尝试将现有的 EclipsePDE 应用程序移植到 BNDTools,但我遇到了问题。
我有一个包含多个子包的项目。其中一个使用 org.jscience,我从一个非索引的 Nexus 存储库中获得。这是 bnd.bnd 文件:
我手动将依赖项添加到 org.jscience。
这是有问题的子包的 .bnd 文件:
对 org.jscience.physics.amount 的依赖在子包的“Calculated Imports”中可见。没有编译错误(或项目上的任何其他错误)。
这是我遇到问题的 .bndrun 文件:
(我知道包和捆绑包的命名很奇怪,但这不是现在的问题)
使用此运行配置,我尝试使用“解决”按钮来解决运行配置所需的运行包,但我收到以下消息:
我尝试自己创建运行包,如下所示:
但是,如果我尝试运行运行配置,我只会收到无法找到 org.jscience 的消息。
当然我做错了什么,但是什么?任何帮助是极大的赞赏。
osgi - bndtools 教程中运行时没有 DS
我关注 bndtools 教程。在第 5 步,我应该在运行时看到 9 个捆绑包,包括 DS 捆绑包。
相反,我只得到这些捆绑包,并且 ExampleComponent 不提供 Greetings 服务:
有人知道我在这里做错了什么吗?
我使用 Eclipse Luna 版本:Luna Service Release 2 (4.4.2)
java - 在 OSGi 项目中使用 Sqlite JDBC Jar
我正在尝试学习 OSGi,我做了一个简单的项目,它将在 Sqlite DB 中创建一个表。我在构建路径中添加了“sqlite-jdbc-3.7.2.jar”。但是当我运行该项目时,它会显示“ClassNotFoundException”。
我使用带有 BndTools 的 Eclipse IDE。
我搜索了其他帖子,有些人说将 jar 添加为不同的捆绑包,然后将其导出。我尝试过这个。在工作区中,我选择了 Import->Plugins and Fragments -> Select The Directory。但它没有列出 Jar(适用于其他 Jar 但不检测 sqlite-jdbc-3.7.2.jar)。
我已经完成了如下操作,
se.sample.sqlitedbconn.ConnActivator.java
se.sample.connproperties.CreateTable.java
当我运行它时,我收到以下错误:
请帮助我:)
eclipse - 是否可以将 bnd 与 maven-bundle-plugin 一起使用来生成 eclipse 功能?
我正在使用 maven-bundle-plugin 为 Eclipse 生成插件。现在我需要生成 Eclipse 功能。我怎样才能实现它?
我不想为此使用 PDE。
osgi - Amdatu JPA (bndtools, felix DM) 无法解析 DataSource 服务
所以我松散地遵循 Amdatu JPA 视频教程,我几乎让它工作......
乍一看一切似乎都很好,只有 DataSource 服务没有解决,我不知道为什么。在我看来,它已注册。那么我将如何调试这个,应该有一些方法来调试这个,对吧?开始时,我在味精日志中有这个:
“dm”的输出:
所以上面的输出应该说明DataSource已经注册了吧?
进一步依赖于 DataSource 的一切显然都没有解决
所以我不明白为什么 DataSource 没有在那里解决?我检查了一下,似乎它是使用属性名称 = ManagedDS 注册的,但我对 Felix DS 很陌生,所以我不太确定这里发生了什么。
我也尝试添加这个
到我的一项服务,但这也无法解决。感谢您对此提供的任何帮助,但我最感激的是一种自己调试和解决此问题的方法。
gradle - 使用 bndtools 部署到 OSGi 容器?
我有一个使用 gradle 和 bnd 插件构建的多捆绑项目。依赖管理是通过bnd。我能够在 Eclipse 中启动和运行我的包。
我想知道通过 bnd 的正确部署工作流程是什么。该release
任务将我所有的包放在一个发布存储库中——我只是使用了一个 filerepo——所以我将所有可部署的包放在一个文件夹中。
- 如何收集正确的依赖项?有 bnd/gradle 任务吗?
- 使用 Jenkins 进行 CI 构建,如何部署到远程 karaf 或 virgo 容器?
service - Amdatu 和 DependencyManager 错误注入服务
我安装了 Amdatu Bootstrap 并创建了一个项目。
我尝试使用dependecyManager 进行简单的服务注入,但运行时出现错误。
代码和我的错误。
这是我的服务的实现:
这是界面:
本服务的激活者:
之后,我创建了一个用于使用 xmlParserService 的测试包:
以及测试服务的激活器:
所以当我在运行描述符中运行它时,我有这个错误 ==>
所以我用 lb 命令显示活动包,然后我再次启动包。出现详细错误 ====>>
这是错误中提到的第 18 行 :: =>
在 TestActivator.java
java - 如何在 OSGi 中使用 Apache POI
我想在 OSGi 中使用 Apache POI 来编写带有流式 OOXML API (SXSSF) 的 Excel 工作簿。从 POI 3.9 开始提供流 API。
由于最新的 Apache POI 3.11 jar 不是捆绑包:让 POI 在 OSGi 中工作的最佳方式是什么?
我尝试了两种方法:
- 将罐子直接嵌入到将使用它们的唯一包中
- 使用预先包装为捆绑包的 POI jar
我对将所有依赖项放在一起感到绝望。
首先关于在我的包中嵌入 POI jar:我的 bndtools 文件包含
这会导致一个包导入很多很多东西,例如org.bouncycastle.asn1.x509
和org.junit
. 我不打算在我的应用程序中加密或测试 - 所以这两个可能在某种程度上是“可选的”。我该如何指定?有没有收集所有这些依赖项的好方法?
注意:至少org.apache.commons.codec
和com.sun.msv.datatype.xsd.lib
是额外需要的,但它们已经是捆绑包。
使用预包装的罐子,我尝试使用org.apache.servicemix.bundles.poi
3.9_2。这也需要dom4j
,所以我使用了预包装org.apache.servicemix.bundles.dom4j
但至少需要 1.0 版本javax.xml.stream
,我的 JVM/Felix OSGi 将其宣传为“唯一”版本0.0.0.1_007_JavaSE
。我手动修复了这个(丑陋),但后来又陷入了另一个依赖。
有什么好办法?