Nea*_*999 5 git android gradle
我正在尝试使用 Git 在 Gradle 中创建自动版本控制,但在构建应用程序时遇到一些错误。我的操作系统是Windows。
def getVerName = { ->
try {
def stdout = new ByteArrayOutputStream()
exec {
commandLine "git", "describe", "--long"
standardOutput = stdout
}
def result = stdout.toString()
result = result.trim()
return result
} catch (ignored) {
return null
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的异常的堆栈跟踪
我的GIT路径:C:\Program Files\Git\cmd
. 设置PATH
局部变量什么也不做。从 StackTrace 中您可以看到 Gradle 正在应用程序目录中查找 git.exe。如何改变这条路径?
org.gradle.process.internal.ExecException: A problem occurred starting process 'command 'git''
at org.gradle.process.internal.DefaultExecHandle.setEndStateInfo(DefaultExecHandle.java:197)
at org.gradle.process.internal.DefaultExecHandle.failed(DefaultExecHandle.java:327)
at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:86)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Error:net.rubygrapefruit.platform.NativeException: Could not start 'git'
at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:27)
at net.rubygrapefruit.platform.internal.WindowsProcessLauncher.start(WindowsProcessLauncher.java:22)
at net.rubygrapefruit.platform.internal.WrapperProcessLauncher.start(WrapperProcessLauncher.java:36)
at org.gradle.process.internal.ExecHandleRunner.run(ExecHandleRunner.java:68)
... 5 more
Error:java.io.IOException: Cannot run program "git" (in directory "C:\Users\Mellony\Resg\app"): CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at net.rubygrapefruit.platform.internal.DefaultProcessLauncher.start(DefaultProcessLauncher.java:25)
... 8 more
Error:java.io.IOException: CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 9 more
Run Code Online (Sandbox Code Playgroud)
如果 gradle 无法找到 git 的位置,我会尝试使用 git 可执行文件的完整路径,或者设置workingDir
Exec 的值。
exec {
workingDir '../path/to/git/bin'
commandLine 'cmd', '/c', 'git',...
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6718 次 |
最近记录: |