使用CommandLineJobRunner运行Spring批处理错误,无法找到或加载主类CommandLineJobRunner

时间:2019-05-13 15:58:48

标签: jar spring-batch

我是Spring批处理的新手,并且想使用CommandLineJobRunner类通过命令行运行批处理,因此我将生成的jar文件和CommandLineJobRunner复制到了我的桌面,并运行了以下命令:

Java -cp spring-batch-example.jar org.springframework.batch.core.launch。支持。 CommandLineJobRunner类路径:/ jobs / file-import-job。 xml simpleFileImportJob

出现此错误的

(无法找到或加载主要组织的springframework,批处理,核心,启动,支持,CommandLineJobRunner)。 我认为我应该处理类路径,但我不知道该怎么做。

enter image description here enter image description here

1 个答案:

答案 0 :(得分:1)

您还需要将Spring Batch jar添加到类路径中,例如:

java -cp spring-batch-example.jar:lib/* org.springframework.batch.core.launch.support.CommandLineJobRunner classpath:/jobs/file-import-job.xml simpleFileImportJob

其中lib包含Spring Batch jar及其依赖项。请注意,如果您在Windows上,则需要使用“;”而不是':'来分隔类路径条目。

我建议使用maven shade plugin或类似的插件来创建uber jar,或者使用Spring Boot,它将为您完成。在这两种情况下,您都可以使用以下方式运行您的工作:

java -jar spring-batch-example.jar