Java模块中BuildConfig的等价物是什么? - Android

Ant*_*nio 10 java android module android-gradle-plugin android-buildconfig

我正在使用AndroidStudio,我有以下内容:

  • 主Android项目:app
  • Java Library:沟通

我想设置我的"通信"模块的gradle文件来实现以下目的:

  • 作为app模块的gradle,我可以为BuildConfig.java文件设置变量,例如:

    buildTypes {
        release {
            ...
            buildConfigField "String", "SERVER_URL", '"my_url"'
        }
    
        debug {
            buildConfigField "String", "SERVER_URL", '"my_url"'
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)

然后我可以使用它们 BuildConfig.SERVER_URL

问题是:如何使用Java Library模块实现此目的?

Voj*_*zel 6

我认为您正在寻找这个 Gradle 插件。它将 BuildConfig 引入纯 Java 模块。

https://github.com/mfuerstenau/gradle-buildconfig-plugin


Lio*_*and 0

如果 Java 库指的是 Android 模块,那么:

将文件内的 buildTypes 变量设置build.gradle为库模块(如应用程序模块)。

通过使用正确的 BuildConfig 类来获取它。

  • my.package.app.BuildConfig.APP_VARIABLE
  • my.package.library.BuildConfig.LIBRARY_VARIABLE

以其他方式,也许你可以看看 gradle 任务和系统环境这个答案可以帮助你/sf/answers/1800023221/

没有其他方法可以在 Android 模块之外获取构建配置。

只需根据您的 android BuildConfig 变量设置/添加环境变量即可。

  • 感谢您的回答,@Lionel。它不是基于 Android 的项目模块。它是一个具有`插件'java'`的Java模块 (3认同)