gradle - 无法在 gradle 中配置属性文件

标签 gradle kotlin build.gradle discord properties-file

所以我试图在我的 Kotlin 代码中访问一个 token key ,但它不会让我导入 BuildConfig。

在我的 main() 中,我有:

val client: DiscordClient = DiscordClientBuilder(BuildConfig.TOKEN_KEY).build()
BuildConfig在 IntelliJ 中是红色的。

我的 build.gradle如下:
defaultConfig {
    buildConfigField("String", "TOKEN_KEY", apikeyProperties['TOKEN_KEY'])
}

我到处都看到他们希望 defaultConfig 位于 android {} 中的 stackoverflow 帖子,但我不是在制作 Android 应用程序。

我的 token key 在一个名为 apikey.properties 的文件中在已添加到 .gitignore 的根目录中.
文件内容:
TOKEN_KEY="token_value"

最佳答案

BuildConfig是由 Android Gradle 插件生成的类,因此它不是 Gradle 标准功能集的一部分。

At build time, Gradle generates the BuildConfig class so your app code can inspect information about the current build.



(来自:Share custom fields and resource values with your app's code)

由于您没有使用 Android 插件,因此不会生成该类并且在 IJ 中为红色。

您有以下选择:
  • 使用您的源代码部署属性文件并在运行时相应地读取它
  • 看看this answer提问 Generate a Java class using Gradle for Java plugin .它提到了替代 gradle-buildconfig-plugin对于非 Android 项目。
  • 关于gradle - 无法在 gradle 中配置属性文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59652005/

    相关文章:

    gradle - 如何避免使用 Gradle 从 flatDir 依赖项中获取源 jar

    android - Gradle:如何定义多种口味的共同依赖?

    java - java/kotlin 方程中的时间顺序和加法函数

    android - 函数使用liveData返回void

    android - 如何在 Android Studio 中启用 Java 8 语言特性

    android - Android Studio中这两个Gradle是什么意思?

    java - Gradle + Intellij IDEA 13 错误

    kotlin - 为什么索引是集合的属性而不是列表?

    gradle - gradle:正在跳过任务':,因为它没有源文件。并且不会生成zip文件

    android - 在 android build.gradle 文件中添加任何新的依赖项。它总是显示错误