未解决的引用 getProperty
Unresolved Reference getProperty
我正在尝试从我的 local.properties
文件中加载 属性 到我的 build.gradle.kts
中,如下所示:
val properties = Properties().load(project.rootProject.file("local.properties").inputStream())
val key: String = properties.getProperty("key")
但我收到以下错误:
e: /build.gradle.kts:37:30: Unresolved reference: getProperty
为什么会这样?它可以从 java.util.Properties
中找到 class 属性,但不能找到函数 getProperty
。这对我来说没有任何意义。我该如何解决这个问题?
这是整个构建文件:
完整 build.gradle.kts 文件:
import java.util.Properties
plugins {
kotlin("js") version "1.5.20"
}
group = "de.example"
version = "0.0.1-SNAPSHOT"
repositories {
mavenCentral()
}
dependencies {
implementation(npm("obsidian", "0.12.5", false))
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core-js:1.5.1")
}
kotlin {
js(IR) {
binaries.executable()
browser {
useCommonJs()
webpackTask {
output.libraryTarget = "commonjs"
output.library = null
outputFileName = "main.js"
}
commonWebpackConfig {
cssSupport.enabled = true
}
}
}
}
val properties = Properties().load(project.rootProject.file("local.properties").inputStream())
val key: String = properties.getProperty("key")
load
Properties
class returns void
的方法,所以你的 val properties
是 kotlin.Unit
.
要获得想要的结果,您需要按以下方式初始化 properties
:
val properties = Properties().apply { load(project.rootProject.file("local.properties").inputStream()) }
无论如何,这不是将配置属性传递到 Gradle 构建脚本的推荐方法(参见 https://docs.gradle.org/current/userguide/build_environment.html)
我正在尝试从我的 local.properties
文件中加载 属性 到我的 build.gradle.kts
中,如下所示:
val properties = Properties().load(project.rootProject.file("local.properties").inputStream())
val key: String = properties.getProperty("key")
但我收到以下错误:
e: /build.gradle.kts:37:30: Unresolved reference: getProperty
为什么会这样?它可以从 java.util.Properties
中找到 class 属性,但不能找到函数 getProperty
。这对我来说没有任何意义。我该如何解决这个问题?
这是整个构建文件:
完整 build.gradle.kts 文件:
import java.util.Properties
plugins {
kotlin("js") version "1.5.20"
}
group = "de.example"
version = "0.0.1-SNAPSHOT"
repositories {
mavenCentral()
}
dependencies {
implementation(npm("obsidian", "0.12.5", false))
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core-js:1.5.1")
}
kotlin {
js(IR) {
binaries.executable()
browser {
useCommonJs()
webpackTask {
output.libraryTarget = "commonjs"
output.library = null
outputFileName = "main.js"
}
commonWebpackConfig {
cssSupport.enabled = true
}
}
}
}
val properties = Properties().load(project.rootProject.file("local.properties").inputStream())
val key: String = properties.getProperty("key")
load
Properties
class returns void
的方法,所以你的 val properties
是 kotlin.Unit
.
要获得想要的结果,您需要按以下方式初始化 properties
:
val properties = Properties().apply { load(project.rootProject.file("local.properties").inputStream()) }
无论如何,这不是将配置属性传递到 Gradle 构建脚本的推荐方法(参见 https://docs.gradle.org/current/userguide/build_environment.html)