/usr/bin/env: 'sh': 不是 Azure Devops 管道上的目录错误
/usr/bin/env: 'sh': Not a directory error on Azure Devops Pipeline
我有一个 gradle 项目,我想在 Azure DevOps 中的自托管代理上构建它。
这是我的 gradle 任务管道:
trigger:
- azure-pipelines
pool:
name: Default
steps:
- task: Gradle@2
inputs:
workingDirectory: ''
gradleWrapperFile: 'gradlew'
gradleOptions: '-Xmx3072m'
javaHomeOption: 'JDKVERSION'
jdkVersionOption: 1.8
jdkArchitectureOption: x64
jdkUserInputPath: '/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java'
publishJUnitResults: false
testResultsFiles: '**/TEST-*.xml'
tasks: 'build'
但是如果我 运行 管道我遇到了以下问题:
Error: The process '/azp/agent/_work/1/s/gradlew' failed with exit code 126
at ExecState._setResult (/azp/agent/_work/_tasks/Gradle_8d8eebd8-2b94-4c97-85af-839254cc6da4/2.176.0/node_modules/azure-pipelines-task-lib/toolrunner.js:816:25)
at ExecState.CheckComplete (/azp/agent/_work/_tasks/Gradle_8d8eebd8-2b94-4c97-85af-839254cc6da4/2.176.0/node_modules/azure-pipelines-task-lib/toolrunner.js:799:18)
at ChildProcess.<anonymous> (/azp/agent/_work/_tasks/Gradle_8d8eebd8-2b94-4c97-85af-839254cc6da4/2.176.0/node_modules/azure-pipelines-task-lib/toolrunner.js:721:19)
at emitTwo (events.js:106:13)
at ChildProcess.emit (events.js:191:7)
at maybeClose (internal/child_process.js:920:16)
at Socket.<anonymous> (internal/child_process.js:351:11)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at Pipe._handle.close [as _onclose] (net.js:509:12)
SYSTEMVSSCONNECTION exists true
/azp/agent/_work/1/s/gradlew build
/usr/bin/env: 'sh': Not a directory
##[error]Error: The process '/azp/agent/_work/1/s/gradlew' failed with exit code 126
我已经尝试手动 运行 代理上的 gradlew 包装器,它没有问题。
我可以解决问题。我刚刚使用管道设置了一个新的存储库,现在一切正常。我想,这是我旧仓库的问题。
我有一个 gradle 项目,我想在 Azure DevOps 中的自托管代理上构建它。
这是我的 gradle 任务管道:
trigger:
- azure-pipelines
pool:
name: Default
steps:
- task: Gradle@2
inputs:
workingDirectory: ''
gradleWrapperFile: 'gradlew'
gradleOptions: '-Xmx3072m'
javaHomeOption: 'JDKVERSION'
jdkVersionOption: 1.8
jdkArchitectureOption: x64
jdkUserInputPath: '/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java'
publishJUnitResults: false
testResultsFiles: '**/TEST-*.xml'
tasks: 'build'
但是如果我 运行 管道我遇到了以下问题:
Error: The process '/azp/agent/_work/1/s/gradlew' failed with exit code 126
at ExecState._setResult (/azp/agent/_work/_tasks/Gradle_8d8eebd8-2b94-4c97-85af-839254cc6da4/2.176.0/node_modules/azure-pipelines-task-lib/toolrunner.js:816:25)
at ExecState.CheckComplete (/azp/agent/_work/_tasks/Gradle_8d8eebd8-2b94-4c97-85af-839254cc6da4/2.176.0/node_modules/azure-pipelines-task-lib/toolrunner.js:799:18)
at ChildProcess.<anonymous> (/azp/agent/_work/_tasks/Gradle_8d8eebd8-2b94-4c97-85af-839254cc6da4/2.176.0/node_modules/azure-pipelines-task-lib/toolrunner.js:721:19)
at emitTwo (events.js:106:13)
at ChildProcess.emit (events.js:191:7)
at maybeClose (internal/child_process.js:920:16)
at Socket.<anonymous> (internal/child_process.js:351:11)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at Pipe._handle.close [as _onclose] (net.js:509:12)
SYSTEMVSSCONNECTION exists true
/azp/agent/_work/1/s/gradlew build
/usr/bin/env: 'sh': Not a directory
##[error]Error: The process '/azp/agent/_work/1/s/gradlew' failed with exit code 126
我已经尝试手动 运行 代理上的 gradlew 包装器,它没有问题。
我可以解决问题。我刚刚使用管道设置了一个新的存储库,现在一切正常。我想,这是我旧仓库的问题。