webjobs在azure中用于springBatch项目



我是azure的新手,并试图将我的春季批处理项目部署为azure中的web作业。有人可以帮助我的过程或变化需要在我的春季批处理项目添加webjobs作为一个jar之前。

我已经尝试过导出jar并将该jar添加为azure服务中的webjob,但它不适合我。并帮助我如何从我的春季批处理项目导出jar文件

要创建一个可执行的jar,这个jar必须有一个MANIFEST。指向主类的MF类。我猜azure webjobs会尝试在没有参数的情况下执行main类,所以你不能直接使用org.springframework.batch.core.launch.support.CommandLineJobRunner

所以你需要写一个自定义的主类,类似于:
public class ApplicationMain {

public static void main(String[] args) {

SpringApplication app = new SpringApplication(Application.class);
app.setWebEnvironment(false);
ConfigurableApplicationContext ctx = app.run(args);
JobLauncher jobLauncher = ctx.getBean(JobLauncher.class);
JobParameters jobParameters = new JobParametersBuilder()
.add...
.toJobParameters();  

jobLauncher.run(ctx.getBean("...",  Job.class), jobParameters);  
System.exit(0);
}
}

在你的MANIFEST中。MF文件,然后需要:

Main-Class: com.something.ApplicationMain

如果不适合你,请在你的问题中指定额外的细节。

相关内容

  • 没有找到相关文章

最新更新