Spring Boot CLI使用教程

时间:2021-05-20

Spring Boot CLI是Spring Boot项目提供的一个用于快速运行Spring Boot应用的命令行工具,通过结合Groovy,可以实现一个文件的WEB应用,用于快速实验原型是最好不过的了。

安装

手动安装:https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#getting-started-installing-the-cli

下载spring-boot-cli-1.5.8.RELEASE-bin.zip,解压,然后把spring-1.5.8.RELEASE\bin的路径加入PATH环境变量。

一个文件的web应用

一般Java想要启动一个web应用需要很多样板代码与配置,一个基于Spring的web应用就更加可怕了,如果没有IDE的帮助,新建一个估计得查半天资料。而使用Spring Boot CLI我们只需要一个文件!

新建文件app.groovy:

@RestControllerclass ThisWillActuallyRun { @RequestMapping("/") String home() { "Hello World!" }}

然后执行$ spring run app.groovy,第一次执行会下载依赖,会慢一些,之后就很快了,通过localhost:8080可以访问这个应用。

如果想指定别的端口:

$ spring run hello.groovy -- --server.port=9000

这里的--用于区分传递给spring应用的参数和传递给cli的参数。

新建项目

Spring Boot CLI可以新建项目,他其实是调用start.spring.io来新建项目。比如:

$ spring init --dependencies=web,data-jpa my-projectUsing service at https://start.spring.ioProject extracted to '/Users/developer/example/my-project'

这样就不用去网站上新建项目再下载下来了。通过可以查看有哪些可以使用的构建工具和依赖:

$ spring init --list=======================================Capabilities of https://start.spring.io=======================================Available dependencies:-----------------------actuator - Actuator: Production ready features to help you monitor and manage your application...web - Web: Support for full-stack web development, including Tomcat and spring-webmvcwebsocket - Websocket: Support for WebSocket developmentws - WS: Support for Spring Web ServicesAvailable project types:------------------------gradle-build - Gradle Config [format:build, build:gradle]gradle-project - Gradle Project [format:project, build:gradle]maven-build - Maven POM [format:build, build:maven]maven-project - Maven Project [format:project, build:maven] (default)...

一个更加完整的用法:

$ spring init --build=gradle --java-version=1.8 --dependencies=websocket --packaging=war sample-app.zipUsing service at https://start.spring.ioContent saved to 'sample-app.zip'

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章