Spring Boot CLI使用教程

网友投稿 367 2023-03-25


Spring Boot CLI使用教程

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:

@RestController

class 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-project

Using service at https://start.spring.io

Project extracted to '/Users/developer/example/my-project'

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

$ 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-webmvc

websocket - Websocket: Support for WebSocket development

ws - WS: Support for Spring Web Services

Available 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.zip

Using service at https://start.spring.io

Content saved to 'sample-app.zip'


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Angular弹出模态框的两种方式
下一篇:Java中一维二维数组的静态和动态初始化
相关文章

 发表评论

暂时没有评论,来抢沙发吧~