gpt4 book ai didi

marklogic - 动态设置 ml-gradle 属性

转载 作者:行者123 更新时间:2023-12-03 06:52:04 26 4
gpt4 key购买 nike

我需要在构建脚本本身中设置 ml-gradle 属性 (mlModulesDatabaseName)。我的印象是,gradle-y 的方法是使用额外的模块扩展:

ext {
mlModulesDatabaseName = 'Modules'
}

这似乎将值放置在 project.properties 映射中,就像从 gradle.properties 读取值一样,但当我尝试运行 mlReloadModules 任务时,它似乎没有针对正确的数据库:

$ ./gradlew mlReloadModules -Pdev
:mlDeleteModuleTimestampsFile
:mlClearModulesDatabase
Clearing modules database
Logging HTTP response body to assist with debugging: {"errorResponse":{"statusCode":"404", "status":"Not Found", "messageCode":"XDMP-NOSUCHDB", "message":"XDMP-NOSUCHDB: xdmp:database(\"my-app-modules\") -- No such database my-app-modules"}}
Unable to clear database; cause: 404 Not Found
Finished clearing modules database
:mlPrepareRestApiDependencies
:mlLoadModules
:mlReloadModules

BUILD SUCCESSFUL

这可能是我不了解 gradle 如何确定其属性的范围,但您可能会认为这可行。关于如何实现这一目标有什么建议吗?

最佳答案

据我所知,ml-gradle 在作为插件应用后立即读取属性。这意味着此行之后对属性的所有更改

apply plugin: "com.marklogic.ml-gradle"

没有效果。您是否尝试过在应用 ml-gradle 插件之前设置 ext 属性?

编辑:设置自定义属性的另一种方法是这样设置:

ext {
mlAppConfig {
modulesDatabaseName = 'Modules'
}
}

这也适用于 apply plugin 行之后。

关于marklogic - 动态设置 ml-gradle 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52602099/

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