我使用ApacheFelix实现osgi包,并将其用作嵌入式Felix框架来调用boundle
这是我的maven插件,用于构建清单。MF:
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>3.5.0</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Embed-Dependency>*;scope=compile|runtime</Embed-Dependency>
<Bundle-Activator>a.b.c.osgi.activator.Activator</Bundle-Activator>
</instructions>
</configuration>
</plugin>
我构建项目,然后像这样在嵌入式felix中使用jar文件
BundleContext bundleContext = f.getBundleContext();
Bundle bundle = bundleContext.installBundle(
"file:/home/eclipse_workSpace/my-module/target/abc-1.1.0.jar");)
String bName = bundle.getLocation();
bundle.getRegisteredServices();
bundle.getState();
/* Bundle[] bls = bundleContext.getBundles(); */
System.out.println("starting bundle " + bName);
bundle.start();
当我开始边界时,我得到了这个例外
线程“main”组织中出现异常。奥斯基。框架BundleException:无法解析a.b.c[1](R1.0):缺少要求[a.b.c[1](R1.0)]osgi。装电线。包裹(
我该怎么解决这个问题?
此错误消息意味着您的捆绑包依赖于Google Guava 21版。具体来说,这一行:
missing requirement [a.b.c [1](R 1.0)] osgi.wiring.package; (&(osgi.wiring.package=com.google.common.base)(version>=21.0.0)(!(version>=22.0.0)))
... 意味着您的捆绑包“a.b.c”导入包com.google.常见的基本版本大于或等于21,但不大于或等于22。因为您的包导入了这个包,所以在您的OSGi框架中必须有另一个包导出这个包。
解决方案是确保Guava 21安装到OSGi框架中。
我正在尝试演示应用程序,但是当在中导入项目时,我在pom.xml文件中得到以下错误
我有一个问题,在制作Minecraft插件和编写代码方面是新手。 我试图制作一个插件,在执行第二个命令之前等待大约15秒,但是我现在的代码在我尝试做的时候有一个错误(插件,新的Runnable()。我做了一些研究,大多数人说这是因为我的主类中没有这个。问题是我不想让它在我的主类中。所以我想知道我必须做什么来使这个工作。 代码如下。提前感谢您能提供的任何帮助。~石头 给我带来问题的代码就在这里(插件
我正在尝试编写Grails openId插件的教程。我创建了一个测试应用程序,完全按照伯特·贝克维思教程中的步骤操作http://grails-plugins.github.com/grails-spring-security-openid/docs/manual/guide/3.教程。html 但是,当我已经在这样做的步骤:$grails s2-快速入门com.openidtest用户角色 它显
我正在学习使用docker的Spring boot教程 我是不是遗漏了docker的配置?
我已经为Jasper1.6.1安装了插件,可以在插件的目录中看到它。然而,根据http://grails.org/plugin/jasper,它说当你运行你的应用程序时,通过(app-url)/jasper/demo来测试插件。当我试着那样做的时候,它不起作用。我很确定我漏掉了什么,但文件没有说。请帮忙。
这是我在将SDK和Build工具更新到Android M时遇到的错误。 当类路径< code > ' com . Android . tools . build:gradle:1 . 2 . 3 ' 更改为1.3时 我遇到了另一个错误。 我现在该怎么办?