java - 执行单个命令并退出 Spring Shell 2

标签 java spring-boot spring-shell

我偶然发现了 this question前一段时间,解释了如何在使用单个命令从命令行调用 Spring Shell 应用程序后退出它。然而,在 2.0.0 中使用 Spring Boot 对此进行测试,似乎不再是使用命令参数调用 JAR 将执行该命令然后退出的情况。 shell 只是正常启动而不执行提供的命令。仍然可以这样做吗?如果不是,是否可以将参数从JAR执行传递给Spring Shell,然后在执行后触发退出?

例如,假设我有一个命令 import,它有几个选项。它可以像这样在 shell 中运行:

$ java -jar my-app.jar

> import -f /path/to/file.txt --overwrite
Successfully imported 'file.txt'

> exit

但是为了构建可以利用此功能的脚本,能够简单地执行和退出会很好:

$ java -jar my-app.jar import -f /path/to/file.txt --overwrite
Successfully imported 'file.txt'

最佳答案

用@my-script 运行它,像这样:

java -jar my-app.jar @my-script

其中 my-script 是包含您的命令的文件:

import -f /path/to/file.txt --overwrite

关于java - 执行单个命令并退出 Spring Shell 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46367612/

相关文章:

使用通用接口(interface)捕获 Java 通配符

java - IntelliJ 中的 CLI-Spring Shell

java - Swagger如何正确生成自定义异常类?

java - 运营商 !参数类型未定义 boolean 值

java - 莲花多米诺骨牌下的错误雅各布库(未满足的链接错误:jacob-1. 17-x64(库已加载到另一个类加载器中)

java - @RequestParam名称包含方括号[]

spring - NoSuchMethodError : org. springframework.plugin.core.PluginRegistry.getPluginOrDefaultFor

intellij-idea - Gradle DSL 方法未找到 : 'compileOnly()'

java - 在 shell 启动时将消息打印到 spring shell

java - 从 spring shell 中的少量选项中进行选择