对方法的评论
初始化
创建新 Spring Boot 项目的常见方法是使用 Initializr,start.spring.io。
Spring CLI 为您提供了与 Initializr 交互的命令。请参阅 Initializr,但也提供了创建新项目的其他方法,并解决了day-2
向现有项目添加代码或配置的用例。
使用启动新
这boot new
命令允许您从源代码存储库中的现有项目创建一个新项目。
这boot new
命令允许您指定一小组选项以根据您的需要对其进行自定义(例如更改包名称),但它不提供使用 Initializr 获得的依赖项选择。
的做法boot new
是克隆一个现有存储库,除了项目的依赖项之外,还包含完全有效的代码和配置。
这种方法使您或您的团队成员可以轻松创建多个项目原型,因为它们是源代码存储库中的常规 Spring 项目,可以验证是否与 CI 流程一起使用。
有关更多信息,请参阅创建新项目。
使用启动添加
然后,在初始项目创建后,您可以使用boot add
命令。
此命令会智能地将现有项目合并到当前项目中。
与boot new
命令,现有项目是源代码存储库中的常规 Spring 项目,可以编译和验证以使用 CI 流程。
有关更多信息,请参阅“引导添加”指南。
结论
虽然添加额外代码和依赖项的两种方法都有其用例,但在从头开始创建新项目时,我们发现从工作项目开始更容易。您不仅可以获得公司所需的已批准依赖项,还可以获得代码、配置和测试。 它是一个起点,消除了从教程中选择依赖项和复制代码的繁忙工作和不确定性。 通常,这些教程非常基础,以至于它们不遵循常见的最佳实践约定,也没有测试。
使用模板创建新项目可能是一个挑战。在我们看来,为新项目模板化 Java 代码比从现有工作项目克隆新项目更困难。
创建模板、运行模板,然后编译生成的项目的周期很脆弱。
但是,我们发现创建较小的代码块和配置更适合模板方法——例如,使用spring controller new
将控制器添加到当前项目或使用spring feature new
添加一些文件,例如用@Controller
,@Service
和@Repository
.
您的体验可能会有所不同,但两种类型的代码生成都可以在 Spring CLI 中使用。