我想在 Spring Cloud Dataflow 中启动任务时将对象的 ID 传递给变量。我知道它可以通过参数或参数来完成,但我不知道如何在 Java 代码中处理这些参数或参数,所以我可以接管这个值。您能否说明如何做到这一点?
最佳答案
在 Spring Cloud Data Flow 的上下文中,您可以将 arguments
或 properties
传递给您的任务应用程序。
您为 Spring Cloud Task 应用程序传递的参数 是任务应用程序本身的命令行参数。您需要将参数限定为应用程序的命令行参数。
您为 Spring Cloud Task 应用程序传递的属性是应用程序配置属性或任务部署器属性。他们必须使用前缀 app
、deployer
或 scheduler
。
例如,对于开箱即用的 timestamp
任务应用程序,您可以在以下示例中看到如何使用参数和属性:
- 注册开箱即用的任务应用程序
- 创建时间戳任务:
dataflow:>task create a1 --definition "timestamp"
- 使用参数和属性启动任务
dataflow:>task launch a1 --arguments "--spring.main.banner-mode=off" --properties "app.timestamp.format=YYYY/DD/MM"
在上述情况下,命令行参数--spring.main.banner-mode=off
被传递给时间戳应用程序,而时间戳应用程序的属性format
是传递给任务应用程序。
关于Spring Cloud Dataflow - 处理任务中的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57394244/