gpt4 book ai didi

gradle - 访问存储在 settings.gradle 中的 gradle.properties 中的点属性

转载 作者:行者123 更新时间:2023-12-03 03:45:33 25 4
gpt4 key购买 nike

我有一个 Gradle 6.0.1项目。 build.gradle (摘录)看起来像:

plugins {
id "application"
id "com.github.edeandrea.xjc-generation"
id "eclipse"
id "idea"
id "java"
id "org.springframework.boot"
}

...

dependencies {
implementation platform("org.springframework.boot:spring-boot-dependencies:${property("spring-boot.version")}")

// ...more stuff here
}

// ...more stuff here

我正在管理 settings.gradle 中的所有插件版本:
pluginManagement {
plugins {
id "application"
id "com.github.edeandrea.xjc-generation" version "1.0"
id "eclipse"
id "idea"
id "java"
id "org.springframework.boot" version "${spring-boot.version}"
}
}

rootProject.name = "spring-core"

...我通常将工件版本放在 gradle.properties 中:
#
# Dependency Versions
oracle.version = 18.3.0.0
spring-boot.version = 2.2.1.RELEASE

#
# Gradle Settings
org.gradle.configureondemand = false
org.gradle.daemon = false

#
# System Settings
systemProp.file.encoding = UTF-8
systemProp.sun.jnu.encoding = UTF-8

现在的问题是我无法读取 settings.gradle 中的点属性(来自 gradle.properties )和我在 build.gradle 里面做的一样— 我已经尝试过使用 ${property("spring-boot.version")} .

有什么方法可以实现吗?我可以轻松地将 key 更改为 springBootVersion 之类的内容。它有效,但我想知道是否有办法以我目前拥有的方式拥有它: spring-boot.version .

最佳答案

使用 getProperty("spring-boot.version")
带有其他变体的简单 gradle 项目


task test{
doLast {
//success
println project.property('aaa.bbb.ccc')
println project.'aaa.bbb.ccc'
println getProperty('aaa.bbb.ccc')

//failure: Could not get unknown property 'aaa.bbb.ccc' for task ':test' of type org.gradle.api.DefaultTask
println property('aaa.bbb.ccc')
}
}

gradle.properties
aaa.bbb.ccc=12345
property('aaa.bbb.ccc')失败,因为它试图获取当前对象(任务)的属性,但 aaa.bbb.ccc为项目定义

然而 project.property('aaa.bbb.ccc')成功,因为它应该
project.'aaa.bbb.ccc'project.getProperty('aaa.bbb.ccc') 相同时髦的
project.getProperty('aaa.bbb.ccc')由于 groovy 基本对象而起作用 GroovyObject (国际卫生组织)

getProperty(name)没有前缀实际上位于 org.gradle.groovy.scripts.BasicScript并没有真正记录...

关于gradle - 访问存储在 settings.gradle 中的 gradle.properties 中的点属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59000077/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com