如何使用 Spring XD REST 接口强制加载模块?

How can a module be forcefully loaded using Spring XD REST interface?

我想使用它提供的 REST 接口将模块上传到 Spring XD 安装。如果模块是全新的,它会按预期工作。但是,如果该模块之前已注册,则该命令将失败(同样,正如预期的那样)。

我知道删除模块并重新上传在概念上很简单。问题在于模块是通过 XD_MODULE_CONFIG_LOCATION 层次结构下的 .properties 文件配置的。实际上,这个文件的存在阻碍了我删除模块的能力,即使使用 xd-shell!

xd-shell命令为'module upload'提供了一个'--force'选项,解决了这个问题。使用POST方法注册模块是否等价?

提前致谢。

我刚刚查看了用于模块上传的 REST 控制器,看起来将 ?force=true 添加到 URI 即可。

是;这就是 shell 所做的:

String uriTemplate = resources.get("modules").toString() + "/{type}/{name}?force={force}";