gradle 5-Windows java.io.IOException:CreateProcess错误= 206,文件名太长

时间:2018-12-01 09:53:05

标签: java windows gradle

最初,https://www.youtube.com/watch?v=Wjmnh9lIuEM是一个很好的解决方案。但是,对于gradle 5:

$msAccountName = ([adsisearcher]"(samaccountname=$env:USERNAME)").FindOne().Properties.mail

失败

CollectionUtils.join(File.pathSeparator, classpath.getFiles())

什么是适用于gradle 5.0的修复程序?

至少对我来说: gradle windows java.io.IOException: CreateProcess error=206, filename is too long 在gradle 5.0上也因相同的错误而失败

3 个答案:

答案 0 :(得分:0)

您可以在gradle buildscript中使用外部库。

示例:

buildscript {
   repositories {
      mavenCentral()
   }
   dependencies {
      // this dependency will be used in gradle build script.
      classpath 'org.apache.commons:commons-lang3:3.8.1'
   }
}
//and use it like this in Your tasks
org.apache.commons.lang3.StringUtils.join(configurations.testRuntime,File.pathSeparator)

我不确定这是否可以解决您的问题,但是您也可以尝试使用其他类似的库。

答案 1 :(得分:0)

经过一些调整后看起来就可以正常工作

doFirst {
            if (org.apache.commons.lang.SystemUtils.IS_OS_WINDOWS) {
                def cp = org.gradle.util.CollectionUtils.join(File.pathSeparator, classpath.getFiles())
                environment 'CLASSPATH', cp
                classpath = classpath.filter { false }
            }
        }

答案 2 :(得分:0)

以下是关于build.gradle文件。

buildscript {
    dependencies {
        classpath "gradle.plugin.ua.eshepelyuk:ManifestClasspath:1.0.0"
    }
}

apply plugin: "ua.eshepelyuk.ManifestClasspath"`