jenkins显示html样式问题的几种解决方案总结

时间:2024-01-12 20:17:20

前言

jenkins上使用HTML Publisher plugin插件生成的html报告样式会丢失,需要设置下才能正常显示。

一、样式丢失

1.官方文档的解释如下,参考地址https://*.com/questions/35783964/jenkins-html-publisher-plugin-no-css-is-displayed-when-report-is-viewed-in-j

从安全性考虑,禁止了css和js的加载,所以无法展示。

This rule set results in the following:

  • No JavaScript allowed at all
  • No plugins (object/embed) allowed
  • No inline CSS, or CSS from other sites allowed
  • No images from other sites allowed
  • No frames allowed
  • No web fonts allowed
  • No XHR/AJAX allowed, etc.

2.展示结果如下

jenkins显示html样式问题的几种解决方案总结

二、jenkins.msi解决方案

1.jenkins的安装分为jenkins.msi客户端安装和jenkins.war服务端安装,如果是jenkins.msi的安装,找到jenkins.xml文件

jenkins显示html样式问题的几种解决方案总结

2.用Notepad++打开这个jenkins.xml文件,找到下图的arguments这一行,红色区域改成如下,改好后保存:

原来是:-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar

修改后:-Xrs -Xmx256m -Dhudson.model.DirectoryBrowserSupport.CSP= -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar

jenkins显示html样式问题的几种解决方案总结

三、jenkins.war解决方案

方法一:

1.如果Jenkins为war包,也就是部署到tomcat上这种,可以通过java命令运行解决
2.先关闭jenkins,打开cmd通过如下命令运行Jenkins:java -Dhudson.model.DirectoryBrowserSupport.CSP= -jar <jenkins.war的路径>

>java -Dhudson.model.DirectoryBrowserSupport.CSP= -jar D:\Jenkins\jenkins.war

jenkins显示html样式问题的几种解决方案总结

方法二:

1.可以直接改catalina.bat文件,找到tomcat/bin下的catalina.bat文件,用Notepad++打开,加上一行代码

set JAVA_OPTS="-Dhudson.model.DirectoryBrowserSupport.CSP=\"sandbox; default-src ""

jenkins显示html样式问题的几种解决方案总结

(以上几种方法设置好后,都需要重启jenkins)

四、重启jenkins

1.先关掉jenkins,在地址栏jenkins的首页后加exit,如 http://localhost:8080/exit,然后点Try POSTing就能关掉jenkins了

jenkins显示html样式问题的几种解决方案总结

2.重启jenkins,在地址栏jenkins的首页后加restart,如 http://localhost:8080/restart ,点Yes就能重启了

jenkins显示html样式问题的几种解决方案总结

3.重启后,再重新构建之前生成html的job任务,就能正常展示html报告了

jenkins显示html样式问题的几种解决方案总结