取得领先
VMware 提供培训和认证来加速您的进步。
了解更多我们很高兴地宣布 Spring Shell 2.x 的第一个里程碑版本!
Spring Shell 2 历时两年打造,是对 Spring Shell 的一次完全重写,利用了更新的组件(如 JLine 3)并应用了更好的模块化。 Spring Shell 2 还在构建时考虑了 Spring Boot,利用了自动配置和其他启动功能。
内部架构现在使用可插拔模型来发现将哪些方法转换为命令、如何将用户输入解析为参数值以及如何处理返回值。 这与 Spring MVC 采用的方法非常相似,并且允许以以前不可能的方式扩展框架。 Spring Shell 的用户通常不会关心这一点,只会处理新的“标准”命令 API 来定义他们的命令。
以下视频中突出显示了一些新功能(请务必全屏运行),但这里有一个更广泛的总结
help
命令比以前更有用,类似于 man
页面的输出下面的短片展示了一些功能,使用了具有以下签名的示例命令
@ShellMethod("Add an item to the current order.")
public String addItem(
@ShellOption(help = "the item reference") String item,
@ShellOption(help = "unit price") @Min(0) float price,
@ShellOption(help = "the number of items to add", defaultValue = "1") @Range(min = 1, max = 15) int qty
) { ... }
@ShellMethod("Submit the order for processing.")
public List<?> submitOrder() { ... }
这只是第一个里程碑,充满了新功能。 在接下来的几周内,我们计划修复一些错误,完成编写全面的参考文档,并重构一些内部结构,从而为 Spring One Platform 带来 2.0.0.RELEASE 版本。
同时,请试用一下并提供反馈!
我要感谢 Florent Biville 和 Camilo Gonzalez,他们通过提供有用的想法和一些宝贵的时间来帮助使这次重写成为现实!