gpt4 book ai didi

android - 为什么用户运行 gradlew 的位置会影响输出?

转载 作者:行者123 更新时间:2023-11-30 01:33:26 26 4
gpt4 key购买 nike

如果我有这样的目录结构:

/someDir/
/AndroidStudioProjectDir/

然后像这样从命令行运行 gradlew:

/someDir/AndroidStudioProjectDir$ ./gradlew tasks

(即,当我运行命令时,我在 someDir/AndroidStudioProjectDir 目录中)

然后它会列出几十个任务,包括我自己的。但是,如果我这样运行它:

/someDir$ ./AndroidStudioProjectDir/gradlew tasks

(即现在我在运行命令行时位于 someDir 目录中)

然后它只列出了一些任务(build设置任务和帮助任务)。

为什么根据发出命令的当前位置会有所不同?

为什么从 projectDir 中运行 gradlew 与从一个目录返回运行 projectDir/gradlew 不同?

最佳答案

发生这种情况是因为 gradle 命令在当前目录 中查找名为build.gradle 的文件。

您可以找到更多 info here .

运行命令:

/someDir/AndroidStudioProjectDir$ ./gradlew tasks

当前目录是/someDir/AndroidStudioProjectDir$,其中有android项目定义的build.gradle脚本。

运行命令:

/someDir$ ./AndroidStudioProjectDir/gradlew tasks

当前目录是/someDir$。在这种情况下,gradle 将找不到 build.gradle 文件,并且只会列出默认任务。


您可以使用--project-dir command line option告诉 gradle 在哪里寻找 build.gradle:

/someDir$ ./AndroidStudioProjectDir/gradlew tasks --project-dir ./AndroidStudioProjectDir/

关于android - 为什么用户运行 gradlew 的位置会影响输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35441870/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com