[英]Installing a feature in servicemix
我正在运行Apache servicemix 4.5.2。 我想安装一个功能,即一个jar文件。 我想要的功能是jtidy 。
pom依赖是:
<dependency>
<groupId>jtidy</groupId>
<artifactId>jtidy</artifactId>
<version>4aug2000r7-dev</version>
</dependency>
而存储库是
http://repo1.maven.org/maven2/jtidy/jtidy/4aug2000r7-dev/jtidy-4aug2000r7-dev.jar
我知道命令功能:安装webconsole ,例如但jtidy不在我的功能:列表中 。 我也尝试过使用addurl命令,但它没有用。 ( addurl mvn: http ://repo1.maven.org/maven2/jtidy/jtidy/4aug2000r7-dev)Karaf文档建议使用Features XML架构添加功能描述符,但遗憾的是链接已损坏。
要知道我做的是下载jtidy.jar并将其复制到我的deploy目录。 它有效,但我不认为这是正确的方法。
有人知道如何在servicemix中正确安装jtidy吗?
谢谢!
安装功能和安装单个JAR或OSGi捆绑包之间存在差异。
功能在XML文件中定义。 一个功能包括许多捆绑,配置,......安装在一起。 请查看http://karaf.apache.org/manual/latest-2.3.x/users-guide/provisioning.html以了解有关Karaf功能的更多信息。
在这种情况下,您希望将单个JAR安装到容器中。 您可以使用命令osgi:install
来执行此操作,然后使用指向JAR的URL(例如mvn:jtidy/jtidy/4aug2000r7-dev
)。
但是,在您的情况下,还有一个复杂性。 jtidy
本身不是OSGi包。 添加必要的OSGi元数据的最简单方法是使用wrap:
protocol自动将OSGi元数据添加到JAR。
因此,要完成包装 - 在Apache ServiceMix中安装此jtidy
依赖项,您可以使用
osgi:install wrap:mvn:jtidy/jtidy/4aug2000r7-dev
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.