2013-03-22 23 views
2

我正在尝试在equinox OSGi容器中安装一个特性。我通过P2主任的命令行工具做到这一点:在equinox中安装带签名的jar

java -jar ./plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar -application org.eclipse.equinox.p2.director -no 
splash -consoleLog -debug -repository <repositoryUrl> -installIU <featurename> -profile <profileName> -vmargs -Declipse.p2.unsignedPolicy=allow 

然而,安装失败,并出现以下错误信息:

!MESSAGE One or more certificates rejected. Cannot proceed with installation. 

这可能是因为该功能包含BouncyCastle的罐子被签署,用于签署这些罐子的证书被拒绝。

有没有人有一个想法我可以如何解决这个问题?

当我通过GUI安装工具安装该功能时,我没有任何问题,但在安装过程中出现一个弹出式窗口,询问我是否要信任证书链。如果在此对话框中单击“是”,该功能将正确安装。

kr,

Frederik。

回答

1

这似乎是p2 Director中的缺陷/缺失功能。 解决方法是将证书安装到您的JVM中。 您可以从签名的JAR文件中提取原始证书。

(你可以找到关于如何提取证书in this post更多信息)

+1

更简单的方法来提取该证书是通过OpenSSL的工具: 'OpenSSL的PKCS7 -in BCKEY.DSA -print_certs -inform DER - out bc.cer' – frederikdebacker 2013-03-22 17:47:45