【发布时间】:2017-12-16 17:56:25
【问题描述】:
我正在运行 Gradle 脚本。一开始我打印PATH环境变量:
println System.getenv( 'PATH' )
输出是:
/usr/bin:/bin:/usr/sbin:/sbin
但真正的 PATH 环境变量是(从终端打印):
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sh........
问题是,为什么 PATH 环境变量在 Gradle 脚本和终端中不进行数学运算?
问题是,我正在构建 Android,它使用 Gradle 作为构建系统。我有 c++ 代码,它是由 CMake 构建的。在 CMake 中,我运行一些 python 脚本,这些脚本执行一些外部命令。但是当 Gradle 更改 PATH 变量时,找不到这些命令并且我收到错误消息。在执行这些命令时,不能选择使用完整路径,例如:
/usr/local/bin/my_mega_command
当我直接运行 CMake 或 python 脚本时,一切都按预期工作。
【问题讨论】:
-
您是从命令行、Android Studio 还是通过其他方式运行 Gradle 任务?
-
@CommonsWare 好问题。检查。我从 Android Studio (Build-> Make Project) 构建了这样的问题。如果我从终端运行 Gradle build 命令,那么它就可以工作。我不会说这是一个问题,但是当您要调试时,那就太尴尬了:(
标签: android gradle environment-variables macos-high-sierra