java - 用于 springBatch 项目的 azure 中的 webjobs
问题描述
我是 azure 的新手,并试图将我的 spring Batch 项目部署为 azure 中的 web 作业。在将 webjobs 添加为 jar 之前,有人可以帮助我完成我的 spring 批处理项目中需要做的过程或更改。
我已经尝试使用导出 jar 并将该 jar 添加为 azure 服务中的 webjob,但它对我不起作用。并帮助我如何从我的 spring Batch 项目中导出 jar 文件
解决方案
要创建可执行 jar,该 jar 必须具有指向主类的 MANIFEST.MF 类。我猜 azure webjobs 会尝试在没有参数的情况下执行主类,所以你不能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
如果这对您不起作用,请在您的问题中指定其他详细信息。
推荐阅读
- javascript - 在 Axios 中反应引导模式弹出窗口?
- html - 如何创建固定的左侧和顶部菜单,但彼此相对?
- azure - Azure IoTHub - 如何获取每台设备的使用数据
- postgresql - 对于这个模式,你如何将 postgres 扩展到数十亿行?
- qt - 使用 Docker 使用 QOffscreenSurface 进行屏幕外渲染
- javascript - onClick 功能仅在第一次反应中有效?
- java - 设计模式 - 单例和类加载器
- amazon-web-services - Velero 不会安装,“additionalProperties 不能设置为 false”
- c# - GraphServiceClient,创建 ContentVersions 以使用 GraphServiceClient
- android - 渲染多个模型时,ARCore (Sceneform) 应用程序崩溃