android - Travis CI 环境变量“;” 预期的
问题描述
这是我第一次尝试使用 TravisCI 进行 CI/CD。
我正在尝试对其进行设置,以便对我的 API 密钥进行加密。我的机器上有奇怪的 Ruby 问题,所以不能通过终端加密密钥,我需要在存储库设置中定义变量。
我已将我的 API 密钥存储在我
~/.gradle/gradle.properties
的 asLUCKY_COINS_API_KEY= "abcd-1234"
然后我通过 TravisCI 向我的 repo 添加了一个环境变量,名称和值与上面相同,我尝试使用 ';' 添加它 和没有。
在我的应用程序
build.gradle
中,我有以下几行。buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' buildConfigField 'String', 'LUCKY_COINS_API_KEY', apiKey() } debug { minifyEnabled true buildConfigField 'String', 'LUCKY_COINS_API_KEY', apiKey() }
}
def apiKey() { if (project.hasProperty("LUCKY_COINS_API_KEY")) { return project.properties["LUCKY_COINS_API_KEY"] } else if (System.getenv("LUCKY_COINS_API_KEY") != null) { return System.getenv("LUCKY_COINS_API_KEY") } else { throw Exceptions("Set API Key") } }
所以现在当项目在 CI 上构建时,它可以访问 API 密钥,因为 TravisCI 无法从我的本地主页 gradle.properties 中提取值。问题是我收到以下错误:
它们都位于远程BuildConfig.java
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: ';' expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: <identifier> expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: <identifier> expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: illegal start of type
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: <identifier> expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: ';' expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: illegal start of type
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: <identifier> expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: ';' expected
public static final String LUCKY_COINS_API_KEY = [secure];
^
e: /home/travis/build/accountName/Lucky-Coins/app/build/generated/source/buildConfig/debug/com/example/luckycoins/BuildConfig.java:14: error: <identifier> expected
public static final String LUCKY_COINS_API_KEY = [secure];
我无法访问此文件,因此无法调试此文件。
解决方案
如果要将字符串添加为存储库变量,则必须转义引号。
所以一定要把"\"API_KEY_HERE\""
推荐阅读
- python - 微 Web 服务和 Python 应用程序之间的进程间通信
- java - Android 应用程序中的 Blogger API 仅显示 10 个帖子
- python - 导入 Tinymce 后 django 管理员站点中缺少输入字段
- javascript - 用普通javascript从数组创建排序子数组的最佳解决方案
- c - 在 STM32F4 上以 double/float 操作时出现故障
- function - PowerShell - 函数中的“RETURN”返回值的两倍而不是一
- initialization - SwiftUI:初始化不初始化数组
- javascript - 使用 Moment.js 显示时间输入
- javascript - 为什么空对象对流类型中的非精确类型注释有效?
- python - Django items = order.orderitem_set.all() 返回数量的空值