gradle - 抑制 Gradle 的 JavaExec 输出

标签 gradle

我在下面有 gradle 代码,但我不知道如何避免 JavaExec 产生的巨大输出任务。我没有找到 JavaExec 的任何选项为了它。如果有人知道更好的忽略它的方法,请分享。

def getStubOutput() {
    return new FileOutputStream(new File("${buildDir}/temp"))
}

configure(project(':jradius:dictionary-min')) {
    evaluationDependsOn(':jradius')
    sourceSets {
        main {
            java {
                srcDir "${projectDir}/target/dictionary-src"
            }
        }
    }
    dependencies {
        compile project(':jradius:core')
    }
    task genSources(type: JavaExec) {
        main = 'net.jradius.freeradius.RadiusDictionary'
        classpath configurations.all
        args = ["net.jradius.dictionary", "${projectDir}/../freeradius/dict-min", "${projectDir}/target/dictionary-src"]
        maxHeapSize = "800m"
        standardOutput = getStubOutput()
    }
    jar {
        archiveName = "jradius-dictionary-min-1.1.5-SNAPSHOT.jar"
    }
    genSources.dependsOn ':jradius:cloneJradius' 
    compileJava.dependsOn genSources
}

最佳答案

我只是使用一个在其 write 中什么都不做的虚拟输出流方法:

def dummyOutputStream = new OutputStream() {
    @Override
    public void write(int b) {}
}

exec {
    executable = name
    standardOutput = dummyOutputStream
    errorOutput = dummyOutputStream
    ignoreExitValue = true
}

关于gradle - 抑制 Gradle 的 JavaExec 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27658300/

相关文章:

Android Gradle - 用什么代替 compileOnly?

android - Aapt 未知命令 '--output-text-symbols'

android - Linux Ubuntu中Gradle解析Android Studio中的问题

GradleWorkerMain OutOfMemoryError

安卓工作室 : how to create a second debug build type

gradle - 扩展现有的 Gradle 任务并覆盖配置

cordova - Ionic Build中的错误:命令的错误代码1:带有args的cmd:

android - Gradle 和嵌套的非传递依赖

java - 如何在评估子项目之前执行 Gradle 任务

plugins - Gradle 自定义插件的构建抛出 "unable to resolve class"