环境:macOS BigSur
我有一个 gradle 项目,它将使用私有(private)存储库来获取工件。要使用此类 repo 协议(protocol),我需要为 gradle 提供凭据。这些凭据本质上是暂时的,所以我需要不时地重新生成它们。为此,我尝试从环境变量中获取凭据。
repositories {
maven {
url 'https://***.codeartifact.***.amazonaws.com/maven/***'
credentials {
username "***"
password System.getenv('CODEARTIFACT_AUTH_TOKEN')
}
}
}
我已经尝试通过 ~/.bash_profile & ~/.zshrc 设置这个凭据
当我通过终端运行 gradle 命令时,它起作用了。但是当我尝试通过 IDEA UI 重新加载 gradle 项目时,它无法查找环境变量。
看起来 IDEA 使用了一些忽略标准终端配置的东西。
出于好奇,我试图突出显示可用于 gradle 构建的环境变量。所以我添加了 print(System.getenv())
来构建文件。当我通过 IDEA UI 重新加载项目时,它输出:
[PATH:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin, JAVA_HOME:/Library/Java/JavaVirtualMachines/jdk-15.0.2.jdk/Contents/Home, COMMAND_MODE:unix2003, VERSIONER_PYTHON_VERSION:2.7, LOGNAME:*******, XPC_SERVICE_NAME:application.com.jetbrains.intellij.ce.117113.118030, __CFBundleIdentifier:com.jetbrains.intellij.ce, SHELL:/bin/bash, USER:*******, TMPDIR:/var/folders/vf/thcas1g120g1df3brgb9h50w0450gp/T/, SSH_AUTH_SOCK:/private/tmp/com.apple.launchd.fa3tDAbfDE/Listeners, XPC_FLAGS:0x0, __CF_USER_TEXT_ENCODING:0x1F6:0x0:0x2, LC_CTYPE:en_GB.UTF-8, HOME:/Users/*******]
我猜有些东西设置了这个环境变量,但不清楚如何设置自定义变量。
有什么想法吗?
最佳答案
对我有帮助:
我在 /etc/launchd.conf
文件中添加了变量。
现在,来自 Intellij IDEA 的 Gradle 可以正常工作。
关于macos - 如何将环境变量传递给由 Intellij IDEA 管理的 gradle 构建文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69086130/