在Java中访问我的jks密钥库时出现问题

在Java中访问我的jks密钥库时出现问题,java,java-security,java-security-manager,Java,Java Security,Java Security Manager,我正在尝试从我的本地机器测试HTTPS SSL连接,因为我在服务器中实现同样的连接时遇到了一些问题 我遵循的步骤 我从浏览器下载了第三方HTTPS服务器SSL证书(DER格式),我看到它是由Comodo RSA颁发的 我试图用命令提示符下的命令将密钥导入为.jks,但失败了,错误为“certificate.jks file not found”/ keytool-importcert-alias testCert-file c:\desktop\testCert.cer-keystore“c:\

我正在尝试从我的本地机器测试HTTPS SSL连接,因为我在服务器中实现同样的连接时遇到了一些问题

我遵循的步骤

  • 我从浏览器下载了第三方HTTPS服务器SSL证书(DER格式),我看到它是由Comodo RSA颁发的

  • 我试图用命令提示符下的命令将密钥导入为.jks,但失败了,错误为“certificate.jks file not found”/ keytool-importcert-alias testCert-file c:\desktop\testCert.cer-keystore“c:\Program Files\Java\jre1.6.0\lib\security\certificate.jks”-storepass changeit

  • 所以我用谷歌搜索并用命令创建了密钥库

    keytool-genkey-alias mykey-keystore“C:\Program Files\Java\jre1.6.0\lib\security\certificate.jks”

  • 现在我执行了相同的命令(步骤2),它成功地运行了。我甚至可以在certificate.jks文件中列出并查看证书

  • 但是当我尝试访问java程序中的certificate.jks作为密钥库时,它失败了,错误为“file not found-certificate.jks”

        KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType());
        ks.load(new FileInputStream ("C:/Program Files/Java/jre1.6.0/lib/security/certificate.jks"), passw );
    
  • 请澄清我在这里做错了什么

    另外,我尽量不使用cacerts,因为它会在我的服务器中自动刷新。我相信如果我创建自己的.jks,它不会被引用。请帮忙


    谢谢

    您的路径正确吗?程序和文件之间有不止一个空格?是的,是的,那是一个打字错误。谢谢,这段代码应该可以运行了——在这里测试一下就可以了。FileNotFoundException:“如果文件不存在,是一个目录而不是常规文件,或者由于某些其他原因无法打开进行读取”。可能尝试将文件放在另一个目录中。。