在步骤之间找不到这种DSL方法“ publishHTML”

use*_*619 2 jenkins jenkins-plugins jenkins-pipeline

我有一个jenkins DSL步骤,该步骤运行我的python鼻子测试并创建一个单元测试覆盖率报告。

这是我的詹金斯舞台。

stage ('Unit Tests') {
            steps {
                sh """
                    #. venv/bin/activate
                    export PATH=${VIRTUAL_ENV}/bin:${PATH}
                    make unittest || true
                """
            }

            post {
                always {
                    junit keepLongStdio: true, testResults: 'report/nosetests.xml'
                    publishHTML target: [
                        reportDir: 'report/coverage',
                        reportFiles: 'index.html',
                        reportName: 'Coverage Report - Unit Test'
                    ]
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)

我收到此错误-

java.lang.NoSuchMethodError:在步骤之间找不到这样的DSL方法“ publishHTML”。

如何解决此错误?我从不同的存储库获得了这段代码。

Mat*_*ard 7

publishHTML方法由HTLMPublisher Jenkins插件提供。在主要的Jenkins服务器上安装插件后,该publishHTML方法将在Jenkins管道中提供脚本化和声明性语法。