我正在将JCommander API用于 Spring Boot - Spring Batch 项目。
项目有多个作业,我需要将作业名称作为参数传递,以便启动特定作业。
java -jar myJar.jar -jobName job1
现在,如果我job1正在运行并且我希望job2在那个时候启动,我不能这样做,因为port is already in use。所以我job2只能在job1完成后启动。
如果我尝试job2在不同的端口启动,
java -jar myJar.jar -jobName job2 --server.port=8090
然后 jCommander 不会让它通过,因为我没有server.port在 JCommander 配置中定义,即使我这样做了,Spring Boot 只会从属性文件中选择属性并尝试在同一个端口上运行 - 8080。
如何处理这种情况?