加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

从命令行运行Spring Batch作业

发布时间:2020-12-15 01:27:09 所属栏目:大数据 来源:网络整理
导读:我不知道如何使用CommandLineJobRunner调用Spring Batch中定义的Job,文档详细信息对我来说还不够. 我遵循Spring Batch official guide使用Java注释在Spring Batch中编写Jobs,例如@EnableBatchProcessing因为我想避免使用XML配置文件来描述作业,步骤等. 到目

我不知道如何使用CommandLineJobRunner调用Spring Batch中定义的Job,文档详细信息对我来说还不够.

我遵循Spring Batch official guide使用Java注释在Spring Batch中编写Jobs,例如@EnableBatchProcessing因为我想避免使用XML配置文件来描述作业,步骤等.

到目前为止,我有:

>一个配置类(com.package.bla.bla.ClassContainingTheBatchConfiguration见下文)我把所有东西定义为ItemReader,ItemProcessor,ItemWriter,Job和Step(返回jobs.get(“nameOfTheJob”)见下文)使用@Bean注释.
>一个带有SpringApplication.run(…)的main方法的类和带有@ImportResource(“classpath:META-INF / spring / applicationContext.xml”)的注释,用于导入在处理Job中的数据时需要的一些bean .

在Maven方面,我目前正在使用一些插件:

> maven-jar-plugin指定< addClasspath> true< / addClasspath>以及包含标记< mainClass>中的main方法的类
> maven-assembly-plugin因为我想要一个包含依赖项中所有内容的独特可执行jar,我正在使用< phase> package< / package>为了能够在包阶段构建jar,我也使用< goal>单< / goal>能够使用组件正确构建jar
> maven-compiler-plugin指定我正在使用Java 1.7

我想我已经配置了所有需要配置的东西,但是在拥有Maven BUILD SUCCESS之后我无法从命令行运行该作业:

java -cp ./target/JAR_FILE_NAME.jar org.springframework.batch.core.launch.support.CommandLineJobRunner com.package.bla.bla.ClassContainingTheBatchConfiguration nameOfTheJob

由于有关com.package.bla.bla.ClassContainingTheBatchConfiguration的java.io.FileNotFoundException,抛出IOException.我应该如何在命令行中指定参数以便执行作业?

最佳答案
如果您已经在Spring Boot中使用SpringApplication,为什么不完成这项工作并使用@EnableAutoConfiguration,以及Maven插件(参见例如this guide)?通过这种方式,您可以快速获得一些工作,并且您可以随时添加自己的功能.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读