我想通过设置Java虚拟机参数将环境特定值传递给Android Studio v 2.2.2(例如服务器URL,密钥存储位置和密码)。到目前为止,我尝试了以下选项,但没有任何工作。Android Studio不尊重环境变量
1.从studio.vmoptions设置Java-VM参数(如记录here)
我点击Help -> Edit Custom VM Options...
创建其在〜/ .AndroidStudio2.2/studio64.vmoptions创建新文件vmoptions 。我编辑了文件以添加以下行。
-DRELEASE_KEY_STORE_PATH=/home/ubuntu/ks/myapp/app-release.keystore
2.用gradle.properties
文件
我已创建在所述根的build.gradle文件存在相同的目录中的文件gradle.properties。该文件具有以下内容。
RELEASE_KEY_STORE_PATH=/home/ubuntu/ks/myapp/app-release.keystore
3.编辑studio.sh文件
我也曾尝试编辑studio.sh文件,添加以下行希望这些属性将提供给Android的工作室。
export RELEASE_KEY_STORE_PATH=/home/ubuntu/ks/myapp/app-release.keystore
我的build.gradle文件有signingConfig部分在使用这个值。
signingConfigs {
release {
storeFile file(System.env.RELEASE_KEY_STORE_PATH)
storePassword System.env.RELEASE_KEYS_STORE_PASSWORD
keyAlias System.env.RELEASE_KEY_ALIAS
keyPassword System.env.RELEASE_KEY_PASSWORD
}
}
构建的gradle时同步工程/建造从Android Studio中运行失败。
显示错误:Neither path nor baseDir may be null or empty string. path='null' basedir='/home/ubuntu/path-to-project'.
这意味着脚本无法解析文件路径,因为它将变为空。
UPDATE 如果我命令列运行它完美的作品的gradle构建,构建成功,我所要做的仅仅是火所需的性能我想在构建继承一些导出命令。
以下是我的开发环境:
-
由Android工作室使用
- 摇篮版本:2.14.1
- 摇篮插件版本:2.3.1
- 的Android Studio版本:2.2.2
- 的Java版本:oracle jdk 1.8.0_111
- 操作系统:Ubuntu 16.04 amd64
当你尝试Gradle选项时,你做了'System.env.RELEASE_KEY_STORE_PATH'还是'RELEASE_KEY_STORE_PATH'?它应该是第二个,因为它不是一个环境变量。 – DeeV
maven选项是什么意思?在gradle.properties文件中设置道具? – Pawan
对不起。我的意思是Gradle选项(#2)。 – DeeV