无法在 gradle 中配置属性文件
Posted
技术标签:
【中文标题】无法在 gradle 中配置属性文件【英文标题】:Can't configure properties-file in gradle 【发布时间】:2020-04-26 08:27:13 【问题描述】:所以我试图在我的 Kotlin 代码中访问令牌密钥,但它不允许我导入 BuildConfig。
在我的 main() 中,我有:
val client: DiscordClient = DiscordClientBuilder(BuildConfig.TOKEN_KEY).build()
BuildConfig
在 IntelliJ 中是红色的。
我的build.gradle
如下:
defaultConfig
buildConfigField("String", "TOKEN_KEY", apikeyProperties['TOKEN_KEY'])
我到处都看到 *** 帖子,他们希望 defaultConfig 在 android
中,但我不是在制作 Android 应用程序。
我的令牌密钥位于根目录下名为apikey.properties
的文件中,该文件已添加到.gitignore
。
文件内容:
TOKEN_KEY="token_value"
【问题讨论】:
【参考方案1】:BuildConfig
是一个由 Android Gradle 插件生成的类,因此它不是 Gradle 标准特征集的一部分。
在构建时,Gradle 会生成
BuildConfig
类,以便您的应用代码可以检查有关当前构建的信息。
(来自:Share custom fields and resource values with your app's code)
由于您没有使用 Android 插件,因此该类不会生成并且在 IJ 中是红色的。
您有以下选择:
使用您的源代码部署属性文件并在运行时相应地读取它 查看this answer 到问题Generate a Java class using Gradle for Java plugin。它提到了用于非 Android 项目的替代 gradle-buildconfig-plugin。【讨论】:
以上是关于无法在 gradle 中配置属性文件的主要内容,如果未能解决你的问题,请参考以下文章
配置gradle :将properties文件转换为扩展属性
配置gradle :将properties文件转换为扩展属性
将系统属性与 proguard 配置文件一起传递给 gradle proguardFile 属性
firebase 无法解析 android 应用程序模块的 gradle 配置
Android Gradle 插件DexOptions 配置 ④ ( additionalParameters 属性配置 | 使用 BuildType 配置多 dex 机制 )