【Jenkins问题已解决记录】PKIX 路径构建失败”和“无法找到请求目标的有效证书路径

本文主要介绍了Jenkins在安装及配置过程中遇到的问题,包括证书验证失败、构建命令执行与反馈不符、HTML测试报告样式问题等,并提供了相应的解决方法。通过升级JDK版本、替换证书、配置端口、调整构建步骤及安全选项等措施,有效解决了这些问题,确保了Jenkins的稳定运行。

项目场景:

tomcat安装Jenkins启动,或者Windows直接安装后启动安装插件报错


问题描述

安装插件,或tomcat启动命令界面报错-PKIX 路径构建失败”和“无法找到请求目标的有效证书路径

sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Relevant discussions can be found on the Internet at:
    http://www.google.co.jp/search?q=d35baff5 or
    http://www.google.co.jp/search?q=1446302e
TwitterException{exceptionCode=[d35baff5-1446302e 43208640-747fd158 43208640-747fd158 43208640-747fd158], statusCode=-1, message=null, code=-1, retryAfter=-1, rateLimitStatus=null, version=3.0.5}
    at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:177)
    at twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:61)
    at twitter4j.internal.http.HttpClientWrapper.get(HttpClientWrapper.java:81)
    at twitter4j.TwitterImpl.get(TwitterImpl.java:1929)
    at twitter4j.TwitterImpl.search(TwitterImpl.java:306)
    at jku.cc.servlets.TweetsAnalyzer.main(TweetsAnalyzer.java:38)
Caused by: javax.net.ssl.SSLHandshakeException: 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.ssl.Alerts.getSSLException(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.fatal(Unknown Source)
    at sun.security.ssl.Handshaker.fatalSE(Unknown Source)
    at sun.security.ssl.Handshaker.fatalSE(Unknown Source)
    at sun.security.ssl.ClientHandshaker.serverCertificate(Unknown Source)
    at sun.security.ssl.ClientHandshaker.processMessage(Unknown Source)
    at sun.security.ssl.Handshaker.processLoop(Unknown Source)
    at sun.security.ssl.Handshaker.process_record(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.readRecord(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
    at sun.security.ssl.SSLSocketImpl.startHandshake(Unknown Source)
    at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source)
    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
    at java.net.HttpURLConnection.getResponseCode(Unknown Source)
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(Unknown Source)
    at twitter4j.internal.http.HttpResponseImpl.<init>(HttpResponseImpl.java:34)
    at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:141)
    ... 5 more
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)
    ... 20 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)
    ... 26 more
Failed to search tweets: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

原因分析:

经过各种论坛,博客,帖子查看,得出结论。如果安装的是java8一下的,可能是java部分功能不支持Jenkins所需的了。

1.jdk版本过低

2.jdk版本证书不支持


解决方案:

1.升级jdk到11级别上的,这个我直接解决问题了

2.替换低版本jdk的证书,这个网上有很多教程,比较复杂,推荐喜欢动手的优秀人才操作

将所需的证书放在C -> 程序文件 -> java -> jre -> lib -> 安全位置

3.其他待发现中。。。

Jenkins:报错Build step ‘Execute Windows batch command‘ marked build as failure解决办法

问题描述

 构建虽然失败了,但是命令却是执行成功了, 问题就在于:Build step 'Execute Windows batch command' marked build as failure

原因:

jenkins 执行命令,会把命令生成一个批处理文件执行,而 pybot 命令对于批处理来说是外部命令,所以要加 call 表示调用。而 jenkins 执行 windows 命令; 若退出代码不为0 ,则 jenkins 会将构建标记为失败,所以需要加上 exit 0 表示执行完成退出

 构建成功,问题解决!

Jenkins-查看HTML测试报告-样式不显示问题解决

1.在jenkins系统管理中输入以下脚本运行:System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")

1找到系统管理-脚本命令行,如下图

输入 System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "" 并执行,如下图

2.清空本地浏览器缓存;

3.重新登录Jenkins查看即可;

修改端口方式
1、java -jar jenkins.war启动端口

执行命令:“java -jar jenkins.war --ajp13Port=-1 --httpPort=8088”,其中8088就是新的端口号。

2、net start jenkins启动端口

修改jenkins安装目录的jenkins.xml配置文件中的arguments中的启动参数,如下:

忘记密码
如果忘记了密码的情况,这个时候需要重置安全选项。

在提示输入initialAdminPassword的时候,我们已经得到了Jenkins的安装路径:

C:\Users\wjl\AppData\Local\Jenkins.jenkins

用文本编辑器打开config.xml,将这一行:

<useSecurity>true</useSecurity>

改为:

<useSecurity>false</useSecurity>

然后重启Jenkins:在terminal中定位到Jenkins.exe的位置,通常情况下在C盘的Program Files中

cd C:\Program Files\Jenkins
# 关闭Jenkins
.\jenkins.exe stop
# 打开Jenkins
.\jenkins.exe start</pre>



再次进入http://localhost:8080,就可以跳过认证直接进入主页面了。

 开放注册
如果多人使用,需要开放注册,这时我们打开点击Dashboard的Manage Jenkins,然后选择Configure Global Security进入安全设置

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值