【发布时间】:2017-07-13 17:01:06
【问题描述】:
我将 JCommander API 用于 Spring Boot - Spring Batch 项目。
项目有多个作业,我需要将作业名称作为参数传递,以便启动特定作业。
java -jar myJar.jar -jobName job1
现在,如果我的job1 正在运行,并且我想在那个时候启动job2,我不能这样做,因为端口已经在使用中。所以我只有在job1 完成后才能启动job2。
如果我尝试在不同的端口启动job2,
java -jar myJar.jar -jobName job2 --server.port=8090
然后 jCommander 不会让它通过,因为我没有在 JCommander 配置中定义 server.port,即使我这样做了,Spring Boot 也只会从属性文件中选择属性并尝试在同一端口运行 - 8080。
如何处理这种情况?
【问题讨论】:
标签: java spring-boot jcommander