<noframes id="bhrfl"><address id="bhrfl"></address>

    <address id="bhrfl"></address>

    <noframes id="bhrfl"><address id="bhrfl"><th id="bhrfl"></th></address>

    <form id="bhrfl"><th id="bhrfl"><progress id="bhrfl"></progress></th></form>

    <em id="bhrfl"><span id="bhrfl"></span></em>

    全部
    常見問題
    產品動態
    精選推薦

    Spring Boot快速開發利器:Spring Boot CLI

    管理 管理 編輯 刪除

    Spring Boot CLI(Command Line Interface)是一個命令行工具,您可以用它來快速構建Spring原型應用。通過Spring Boot CLI,我們可以通過編寫Groovy腳本來快速的構建出Spring Boot應用,并通過命令行的方式將其運行起來。下來,我們來學習一下如何安裝和使用Spring Boot CLI。

    #安裝Spring Boot CLI

    關于Spring Boot CLI的安裝方式有很多,這里根據目前主要主流的開發平臺,具體介紹一下Windows和Mac下的安裝方式:

    #通用安裝

    先介紹一個所有平臺都可以使用的安裝方法。

    第一步:下載Spring Boot CLI的工具包:

    第二步:解壓下載內容,可以看到bin目錄下已經有適用于windows和linux平臺的兩個可執行文件了,我們已經可以直接使用它;為了更方便的使用Spring Boot CLI的命令,我們可以將上面bin目錄中對應的可執行文件加入到當前系統的環境變量即可。

    #Mac OSX Brew安裝

    在Mac OSX系統下面就非常方便了,我們可以通過Brew來進行安裝,只需要分別執行下面的兩條的命令即可:

    $ brew tap pivotal/tap
    $ brew install springboot
    

    #驗證安裝

    不論使用哪種方法安裝,在安裝好之后,我們可以通過下面的命令來驗證一下當前的安裝結果:

    $ spring --version
    Spring CLI v2.0.0.RELEASE

    #運行Groovy腳本

    在完成了Spring Boot CLI的安裝之后,我們來試試使用它來快速的構建一個Spring Boot應用,方法很簡單,只需要如下操作:

    第一步:新建一個Groovy腳本,hello.groovy,內容如下:

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

    第二步:使用spring命令運行該Groovy腳本,具體如下:

    $ spring run hello.groovy
    Resolving dependencies...............................................
    
    
    
    
                                    *::::::::::::::*
                               ::::::::::::::::::::::::::
                            ::::::::::::::::::::::::::::::::       :.
                         *:::::::::::::::::::::::::::::::::::::   :*:
                       :::::::::::::::::::::::::::::::::::::::::::  *:
                     .::::::::::::::::::::::::::::::::::::::::::     :
                    ::::::::::::::::::::::::::::::::::::::::::.      .:
                   :::::::::::::::::::::::::::::::::::::::::          :
                  ::::::::::::::::::::::::::::::::::::::              *:
                 :::::::::::::::::::::::::::::::::*                    :
                :::::::::::::::::::*                                   :
                :::::::::::::::                                 *      *:
               .::::::::::::                                   *       .:
               :::::::::::.                                   :         :
               ::::::::::                                    :         .:
               ::::::::::                                  ::          .:
               .::::::::                                 :::           :*
                ::::::::                               :::             :
                ::::::::                            ::::              ::
                 :::::::                         :::::               *:
                  :::::::                   *:::::::                ::
                   :::::::.          :::::::::::                  :::
                    :::::::::::::::::::::::*                    ::::
                     .:::   :::::::::*                      .:::::*
                       :     ::::::::::::::::::::::::::::::::::::
                         . .:::::::::::::::::::::::::::::::::::
                            ::::::::::::::::::::::::::::::::
                               ::::::::::::::::::::::::::
                                    *::::::::::::::*
    
    
    
    2018-04-04 18:11:20.571  INFO 70477 --- [       runner-0] o.s.boot.SpringApplication               : Starting application on zhaiyongchaodeMacBook-Pro.local with PID 70477 (started by zhaiyongchao in /Users/zhaiyongchao/Downloads)
    2018-04-04 18:11:20.574  INFO 70477 --- [       runner-0] o.s.boot.SpringApplication               : No active profile set, falling back to default profiles: default
    2018-04-04 18:11:20.732  INFO 70477 --- [       runner-0] ConfigServletWebServerApplicationContext : Refreshing org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@3c3ad454: startup date [Wed Apr 04 18:11:20 CST 2018]; root of context hierarchy
    2018-04-04 18:11:21.758  INFO 70477 --- [       runner-0] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
    2018-04-04 18:11:21.783  INFO 70477 --- [       runner-0] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
    2018-04-04 18:11:21.784  INFO 70477 --- [       runner-0] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.5.28
    2018-04-04 18:11:21.795  INFO 70477 --- [ost-startStop-1] o.a.catalina.core.AprLifecycleListener   : The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [/Users/zhaiyongchao/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.]
    2018-04-04 18:11:21.849  INFO 70477 --- [ost-startStop-1] org.apache.catalina.loader.WebappLoader  : Unknown loader org.springframework.boot.cli.compiler.ExtendedGroovyClassLoader$DefaultScopeParentClassLoader@5e3b901 class org.springframework.boot.cli.compiler.ExtendedGroovyClassLoader$DefaultScopeParentClassLoader
    2018-04-04 18:11:21.884  INFO 70477 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
    2018-04-04 18:11:21.885  INFO 70477 --- [ost-startStop-1] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 1153 ms
    2018-04-04 18:11:22.042  INFO 70477 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean  : Servlet dispatcherServlet mapped to [/]
    2018-04-04 18:11:22.049  INFO 70477 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'characterEncodingFilter' to: [/*]
    2018-04-04 18:11:22.049  INFO 70477 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
    2018-04-04 18:11:22.049  INFO 70477 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'httpPutFormContentFilter' to: [/*]
    2018-04-04 18:11:22.049  INFO 70477 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'requestContextFilter' to: [/*]
    2018-04-04 18:11:22.391  INFO 70477 --- [       runner-0] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@3c3ad454: startup date [Wed Apr 04 18:11:20 CST 2018]; root of context hierarchy
    2018-04-04 18:11:22.489  INFO 70477 --- [       runner-0] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/]}" onto public java.lang.String ThisWillActuallyRun.home()
    2018-04-04 18:11:22.495  INFO 70477 --- [       runner-0] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
    2018-04-04 18:11:22.496  INFO 70477 --- [       runner-0] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.servlet.error.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
    2018-04-04 18:11:22.550  INFO 70477 --- [       runner-0] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
    2018-04-04 18:11:22.550  INFO 70477 --- [       runner-0] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
    2018-04-04 18:11:22.598  INFO 70477 --- [       runner-0] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
    2018-04-04 18:11:22.955  INFO 70477 --- [       runner-0] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
    2018-04-04 18:11:23.004  INFO 70477 --- [       runner-0] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
    2018-04-04 18:11:23.010  INFO 70477 --- [       runner-0] o.s.boot.SpringApplication               : Started application in 17.605 seconds (JVM running for 79.248)
    
    
    

    從日志中我們可以看到我們通過Groovy腳本定義的一個簡單web應用就構建成功了,可以通過訪問localhost:8080來驗證一下上面應用提供的接口:

    $ curl localhost:8080
    Hello World!

    是不是非常簡單?有木有顛覆您對Java應用的印象?

    參考文檔:getting-started-installing-spring-boot

    請登錄后查看

    CRMEB 最后編輯于2025-02-24 15:25:37

    快捷回復
    回復
    回復
    回復({{post_count}}) {{!is_user ? '我的回復' :'全部回復'}}
    排序 默認正序 回復倒序 點贊倒序

    {{item.user_info.nickname ? item.user_info.nickname : item.user_name}} LV.{{ item.user_info.bbs_level }}

    作者 管理員 企業

    {{item.floor}}# 同步到gitee 已同步到gitee {{item.is_suggest == 1? '取消推薦': '推薦'}}
    {{item.is_suggest == 1? '取消推薦': '推薦'}}
    沙發 板凳 地板 {{item.floor}}#
    {{item.user_info.title || '暫無簡介'}}
    附件

    {{itemf.name}}

    {{item.created_at}}  {{item.ip_address}}
    打賞
    已打賞¥{{item.reward_price}}
    {{item.like_count}}
    {{item.showReply ? '取消回復' : '回復'}}
    刪除
    回復
    回復

    {{itemc.user_info.nickname}}

    {{itemc.user_name}}

    回復 {{itemc.comment_user_info.nickname}}

    附件

    {{itemf.name}}

    {{itemc.created_at}}
    打賞
    已打賞¥{{itemc.reward_price}}
    {{itemc.like_count}}
    {{itemc.showReply ? '取消回復' : '回復'}}
    刪除
    回復
    回復
    查看更多
    打賞
    已打賞¥{{reward_price}}
    647
    {{like_count}}
    {{collect_count}}
    添加回復 ({{post_count}})

    相關推薦

    快速安全登錄

    使用微信掃碼登錄
    {{item.label}} 加精
    {{item.label}} {{item.label}} 板塊推薦 常見問題 產品動態 精選推薦 首頁頭條 首頁動態 首頁推薦
    取 消 確 定
    回復
    回復
    問題:
    問題自動獲取的帖子內容,不準確時需要手動修改. [獲取答案]
    答案:
    提交
    bug 需求 取 消 確 定
    打賞金額
    當前余額:¥{{rewardUserInfo.reward_price}}
    {{item.price}}元
    請輸入 0.1-{{reward_max_price}} 范圍內的數值
    打賞成功
    ¥{{price}}
    完成 確認打賞

    微信登錄/注冊

    切換手機號登錄

    {{ bind_phone ? '綁定手機' : '手機登錄'}}

    {{codeText}}
    切換微信登錄/注冊
    暫不綁定
    亚洲欧美字幕
    CRMEB客服

    CRMEB咨詢熱線 咨詢熱線

    400-8888-794

    微信掃碼咨詢

    CRMEB開源商城下載 源碼下載 CRMEB幫助文檔 幫助文檔
    返回頂部 返回頂部
    CRMEB客服