2

我正在将 spring-cloud-dataflow 与 taskcloud 模块一起使用,但是在容器中午餐一个简单的示例时遇到了一些麻烦。 小例子6.3 编写代码然后我已经部署它但是当我尝试执行它时给我一个

java.lang.IllegalArgumentException: Invalid TaskExecution, ID 1 not found
  at org.springframework.util.Assert.notNull(Assert.java:134)
  at org.springframework.cloud.task.listener.TaskLifecycleListener.doTaskStart(TaskLifecycleListener.java:200)

在我的评估中,我使用了Spring boot 示例 并在 scd 中运行,我添加了 @EnableTask 并配置了 ad sqlserver 数据源,但它不起作用。

我坚持使用 Spring Cloud 数据流,因为我读过 Spring Batch Admin 已停产,但 2.0.0.BUILD-SNAPSHOT 运行良好,并且一个小示例与 Spring Cloud 中发生的情况相反带有@task 注释的数据流。

可能是我的误解,但你能不能给我一个小例子,或者给我一些网址?

4

2 回答 2

1

参考https://docs.spring.io/spring-cloud-dataflow/docs/current-SNAPSHOT/reference/htmlsingle/#configuration-rdbms,必须将数据源参数传递给数据流服务器和数据流外壳(如果使用) 以使云数据流将执行/任务/步骤相关数据持久保存在所需的数据源中。

例如来自 MySQL 数据源的链接(可以为 SQL Server 配置类似的):

java -jar spring-cloud-dataflow-server-local/target/spring-cloud-dataflow-server-local-1.0.0.BUILD-SNAPSHOT.jar \
    --spring.datasource.url=jdbc:mysql:<db-info> \
    --spring.datasource.username=<user> \
    --spring.datasource.password=<password> \
    --spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
于 2017-10-10T03:05:17.263 回答
1

这个错误:

无效的任务执行,未找到 ID 1

可以是关于 SCDF 的数据源,一般来说,SCDF 在自己的数据库中找不到任务执行表,而不是应用程序数据库

您可以通过添加数据库驱动程序或修复 url 连接字符串来修复它,指向 SCDF 的数据库

下面的这个问题可能会有所帮助

如何正确编译/打包 Spring Cloud Data Flow 的任务

于 2021-07-31T13:16:00.497 回答