Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.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
证书颁发:mvn exec:java看到了,java-jar没有看到_Java_Security_Certificate - Fatal编程技术网

证书颁发:mvn exec:java看到了,java-jar没有看到

证书颁发:mvn exec:java看到了,java-jar没有看到,java,security,certificate,Java,Security,Certificate,我已经安装了安全证书,我有一个问题。当我用 mvn exec:java -Dexec.mainClass="com.myproject.MyClass" 它很好用。但当我尝试将东西打包到一个罐子中,并使用以下工具运行它时: java -jar MyProject.jar 我得到一份工作 Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.c

我已经安装了安全证书,我有一个问题。当我用

mvn exec:java -Dexec.mainClass="com.myproject.MyClass"
它很好用。但当我尝试将东西打包到一个罐子中,并使用以下工具运行它时:

java -jar MyProject.jar
我得到一份工作

Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
        at sun.security.validator.PKIXValidator.doBuild(Unknown Source)
        at sun.security.validator.PKIXValidator.engineValidate(Unknown Source)
        at sun.security.validator.Validator.validate(Unknown Source)
        at sun.security.ssl.X509TrustManagerImpl.validate(Unknown Source)
        at sun.security.ssl.X509TrustManagerImpl.checkTrusted(Unknown Source)
        at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(Unknown Source)
        ... 32 more
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
        at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(Unknown Source)
        at java.security.cert.CertPathBuilder.build(Unknown Source)
        ... 38 more
我使用以下方法创建jar:

mvn clean install jar:jar
在与jar相同的级别上,我有一个名为
lib
的目录,在
lib
中,我有所有依赖项。依赖项已添加到我的jar中的MANIFEST.MF文件中,路径正确,行不太长(每行一个依赖项)

Maven和Java使用相同的JDK。它们通常也应该在类路径上具有相同的依赖关系。但是,
java-jar
似乎忽略了证书

有人能解释为什么会这样吗

谢谢。

你看到这个了吗


这将解决您的问题

我已经使用keytool安装了证书。当通过Maven运行相同的代码时,查找证书没有问题。仅当运行打包在jar中的代码时。不受信任的服务器似乎不是这里的问题。