Portecle软件从pem转换为bks - 安装错误NoClassFoundException

时间:2014-08-27 07:26:21

标签: java android ssl noclassdeffounderror pem

我想使用 .pem 格式证书和 .pkey 键,以便在android中创建套接字SSL。不幸的是,我发现在这个post上,android更喜欢不同的格式,即BKS格式。如此post所述,我们可以通过Portecle将PEM转换为BKS。

但是我无法在Ubuntu中安装Portege。我跑的时候:

java -jar /usr/share/java/portecle.jar

我收到以下错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/bouncycastle/openssl/PasswordFinder
    at java.lang.ClassLoader.defineClass1(Native Method)

    ...

    ...

更新

我忘了将 bcprov.jar 转移到

  

的/ usr /共享/ JAVA

文件夹中。

我转移了它。但现在,当我跑步时

 java -jar /usr/share/java/portecle.jar

,我明白了:

no main manifest attribute, in /usr/share/java/portecle.jar

2 个答案:

答案 0 :(得分:2)

我刚刚按照以下步骤操作:

  • http--sourceforge.net/projects/portecle/
  • 下载.zip
  • 分解.zip文件
  • 在README.txt中注意到最低要求是Java SE 6
  • 已执行java -version并注意到系统路径中的默认值为java version "1.7.0_65"
  • 已执行java -jar portecle-1.7/portecle.jar,它只是显示应用程序而没有任何问题。

答案 1 :(得分:0)

最初必须下载bouncycastle:

http://repo2.maven.org/maven2/org/bouncycastle/bcprov-ext-jdk15on/1.46/bcprov-ext-jdk15on-1.46.jar

在命令提示符中使用此命令:

keytool -importcert -v -trustcacerts -file "oldfilelocation\mycertfile.pem" -alias ca -keystore "newfilelocation\keystore.bks" -provider org.bouncycastle.jce.provider.BouncyCastleProvider -providerpath "jarfilelocation\bcprov-ext-jdk15on-1.46.jar" -storetype BKS -storepass password