Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java NetBeans中的认证错误,即使是“0”;。CER";文件已添加到密钥库_Java_Rest_Maven_Netbeans_Keystore - Fatal编程技术网

Java NetBeans中的认证错误,即使是“0”;。CER";文件已添加到密钥库

Java NetBeans中的认证错误,即使是“0”;。CER";文件已添加到密钥库,java,rest,maven,netbeans,keystore,Java,Rest,Maven,Netbeans,Keystore,我通过发出以下命令将CER文件添加到密钥库: "keytool -import -storepass [insert store pass] -noprompt -alias [insert alias] -keystore "[insert directory]\Java\jre1.8.0_45\lib\security\cacerts" -trustcacerts -file [insertname].cer" 我试图在Java应用程序中进行REST调用。当我在Eclipse中运行应用程序

我通过发出以下命令将CER文件添加到密钥库:

"keytool -import -storepass [insert store pass] -noprompt -alias [insert alias] -keystore "[insert directory]\Java\jre1.8.0_45\lib\security\cacerts" -trustcacerts -file [insertname].cer"
我试图在Java应用程序中进行REST调用。当我在Eclipse中运行应用程序时,我的REST调用会起作用,但当我在NetBeans中运行相同的应用程序时,我会收到以下错误消息,这意味着我没有将CER文件添加到密钥库中:

"PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target" 
我将应用程序从NetBeans直接复制到Eclipse以缩小问题的范围,并且它在Eclipse中工作得非常好,因此我认为这不是编码问题,而是NetBeans中某个地方的配置问题。有人知道我怎么解决这个问题吗?为什么应用程序可以在Eclipse中工作而不能在NetBeans中工作?我一直想四处看看,但什么也找不到

如果它也有用的话,我将使用一个Maven Java应用程序项目


仅供参考:我正在使用NetBeans IDE 8.2修补程序2。

您需要确保从NetBeans运行的应用程序使用相同的JDK

检查项目库中引用的JDK。
或者确保NEtbeans本身是使用正确的JDK启动的

警方证实情况并非如此:


看起来NetBeans在JDK中使用了JRE环境,而Eclipse在运行时使用了非JDK JRE环境


谢谢你的快速回复。我的机器上安装了一个JDK,从我在线阅读的内容来看,Eclipse使用自己的编译器,并在运行时使用jre。我的java目录中有两个文件夹:jdk1.8.0_45和jre1.8.0_45@dunce1使用process explorer检查从Kubernetes访问项目时实际使用的JDK/JRE。它似乎没有使用您在问题中提到的JDK。看起来NetBeans在JDK中使用了JRE环境,而Eclipse在运行时使用的是非JDK JRE环境。我无法将证书添加到JDK下的JRE文件夹中(尽管我是管理员,但访问被拒绝),因此最终将该文件夹替换为非JDK JRE文件夹,现在它可以工作了。@dunce1您是否可能无法更新JRE,因为某个进程已经在使用它,意思是jre/lib/security/cacerts由句柄保存?不确定。在更新密钥之前,我关闭了所有Java应用程序并进入管理模式。我还尝试更改权限设置。