【问题标题】:Gradle Task failing because JSHint detect improvement on codeGradle 任务失败,因为 JSHint 检测到代码的改进
【发布时间】:2015-10-04 19:46:52
【问题描述】:

我有一个任务将运行 Javascript 测试,我正在尝试在运行测试后使用 JSHint 来验证代码,对吧?

所以,这是我的 build.gradle 文件的一部分:

apply plugin: 'com.eriwen.gradle.js'
def jsSrcDir = "src/main/resources/static/js/"
def jsSrcTestDir = "src/test/resources/"

javascript.source {
    dev {
        js {
            srcDir jsSrcDir
            include "*.js"

        }
    }
    test {
        js {
            srcDir jsSrcTestDir
            include "*.js"
        }
    }
}

task jasmineTest(dependsOn: ['npmTest'],type: Exec)

jasmineTest.doFirst {
    println "Running JSHint ----> SOURCE CODE"
    commandLine "jshint", jsSrcDir

    //println "Running JSHint ----> TEST CODE"
    //commandLine "jshint", "src/test/resources/"
}

所以,好的,它运行良好,但总是失败,因为 JSHint 正在对我的代码进行一些改进,这很酷,但这不是我的意图,我想运行jasmine 测试任务,不管 JSHint 有没有改进,我的任务只要测试失败就失败。

那么,我需要在构建 gradle 上进行哪些配置才能使其正常运行? 另外,我配置了 .jshintrc 和 .jshintignore。

【问题讨论】:

    标签: unit-testing gradle groovy jasmine jshint


    【解决方案1】:

    jasmineTest 任务中设置ignoreExitValue = true。这将告诉Gradle 忽略退出值,否则抛出异常。

    https://docs.gradle.org/current/dsl/org.gradle.api.tasks.Exec.html#org.gradle.api.tasks.Exec:ignoreExitValue

    【讨论】:

      猜你喜欢
      • 2019-11-05
      • 2021-06-24
      • 2022-01-23
      • 1970-01-01
      • 2020-06-04
      • 2020-10-31
      • 1970-01-01
      • 2020-03-08
      • 2021-08-01
      相关资源
      最近更新 更多