我看过几个stackoverflow问题与解答,但在使用maven时,没有一个在CLI中有作业参数。
我的参数设置如下:
@Value("#{jobParameters.getOrDefault('startTimestamp', null)}") Long startTimestamp
@Value("#{jobParameters.getOrDefault('endTimestamp', null)}") Long endTimestamp
我的内行的命令是这样的:
mvn clean spring-boot:run -Dspring.batch.job.names=myJob -Dspring.profiles.active=default,dev -f pom.xml
我不确定要添加什么。以下内容不起作用:
-Dspring.batch.job.startTimestamp=1667790578000
-Dspring.batch.job.parameters.startTimestamp=1667790578000
4条答案
按热度按时间w3nuxt5m1#
如果要使用Maven传递作业参数,可以用途:
mvn spring-boot:run -Dspring-boot.run.arguments="param1=value1 param2=value2"
您可以在此处找到文档。
qij5mzcb2#
作业参数通过jobLauncher设置。例如:
如果要将参数作为属性发送,则需要使用
@Value
注解将自定义属性注入到启动作业的Bean中。bfnvny8b3#
在命令行中,可以将作业参数作为键/值对进行传递:
njthzxwz4#
我发现这是工作。
发现堆栈溢出:Get command-line arguments from spring-boot:run