如何读取 build.gradle 中 local.properties 中定义的属性

How do I read properties defined in local.properties in build.gradle(如何读取 build.gradle 中 local.properties 中定义的属性)
本文介绍了如何读取 build.gradle 中 local.properties 中定义的属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在local.properties中设置了sdk.dirndk.dir.

如何读取build.gradle文件中sdk.dirndk.dir中定义的值?

How do I read the values defined in sdk.dir and ndk.dir in the build.gradle file?

推荐答案

你可以这样做:

Properties properties = new Properties()
properties.load(project.rootProject.file('local.properties').newDataInputStream())
def sdkDir = properties.getProperty('sdk.dir')
def ndkDir = properties.getProperty('ndk.dir')

如果您正在读取子项目 build.gradle 中的属性文件,请使用 project.rootProject:

Use project.rootProject if you are reading the properties file in a sub-project build.gradle:

.
├── app
│   ├── build.gradle <-- You are reading the local.properties in this gradle build file
│   └── src
├── build.gradle
├── gradle
├── gradlew
├── gradlew.bat
├── settings.gradle
└── local.properties

如果属性文件在同一个子项目目录中,您可以只使用 project.

In case the properties file is in the same sub-project directory you can use just project.

这篇关于如何读取 build.gradle 中 local.properties 中定义的属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

How to target newer versions in .gitlab-ci.yml using auto devops (java 11 instead of 8 and Android 31 instead of 29)(如何在.gitlab-ci.yml中使用自动开发工具(Java 11而不是8,Android 31而不是29)瞄准较新的版本)
Android + coreLibraryDesugaring: which Java 11 APIs can I expect to work?(Android+core LibraryDesugering:我可以期待哪些Java 11API能够工作?)
How to render something in an if statement React Native(如何在If语句中呈现某些内容Reaction Native)
How can I sync two flatList scroll position in react native(如何在本机Reaction中同步两个平面列表滚动位置)
Using Firebase Firestore in offline only mode(在仅脱机模式下使用Firebase FiRestore)
Crash on Google Play Pre-Launch Report: java.lang.NoSuchMethodError(Google Play发布前崩溃报告:java.lang.NoSuchMethodError)