본문 바로가기
프로그래밍/Spring

스프링 CLI 설치 (Mac OS X, Homebrew)

by Mr-후 2019. 1. 8.
반응형

스프링 CLI 설치 (Mac OS X, Homebrew)


올해 두번째 책으로 스프링부트 코딩공작소라는 책을 읽고 있다. 

스프링에 대해 잘 모르기 때문에 책의 내용이 다소 어려운 내용이 있지만 꾸역 꾸역 읽어 보려고 한다. 

우선 첫 장에서 스프링 시작하기 전에 스프링 CLI(Command-Line Interface) 설치하는 과정에 대한 이야기이다. 

스프링 부트 명령줄 인터페이스(CLI)는 스프링 애플리케이션을 그루비로 개발하는 강력한 기능을 제공하여 자바 애플리케이션에서 흔히 발생하는 문제를 최소화한다. 스프링 부트 CLI를 사용하면 게터와 세터, public이나 private 등 접근 제어자, 세미콜론, return키워드가 필요 없다. 대부분은 import 문까지 제거할 수 있다. 또 애플리케이션이 명령줄에서 스크립트처럼 작동하므로 빌드 명세도 필요 없다. - 책 내용 중 - 

개발 장비가 Macbook-pro Mac OS X이다 보니 Homebrew로 CLI로 설치를 했는데 비교적 간단하고 빠르게 설치가 된다. 맥북에 Homebrew가 설치되어 있다면 ^^ 

맥북에 Homebrew설치 방법은 아래 URL를 참고 

2018/05/02 - [IT.인터넷/OS] - Mac Telnet 설치.

http://brew.sh 사이트에 들어가보니, 대문에 설치 명령어가 바로 나온다. ㅎㅎ 


그다음 Homebrew로 CLI를 설치하려면 Pivotal탭을 태핑해야 하는데 태핑이란( tapping)은 Homebrew에 리포지토리를 추가하는 방법인데 스프링과 스프링 부트를 지원하는 Pivotal사에서 스프링 부터 CLI를 Homebrew로 설치할 수 있도록 탭(tap)을 제공하고 있다. 




$ brew tap pivotal/tap 


younghuui-MacBook-Pro:~ younghumin$ brew tap pivotal/tap

Updating Homebrew...

==> Auto-updated Homebrew!

Updated 1 tap (homebrew/core).

==> New Formulae

anycable-go                   hexyl                         nqp                           sloc

atomist-cli                   interactive-rebase-tool       pass-otp                      swagger-codegen@2

dav1d                         istioctl                      rakudo                        switch-lan-play

dhall                         jmxterm                       react-native-cli              tass64

esptool                       kubeseal                      redis@4.0                     termtosvg

gambit-scheme                 libnova                       ruby@2.5

ghr                           moarvm                        ship

==> Updated Formulae

gradle                       firebase-cli                  libidn2                       qpid-proton

abcm2ps                       fish                          libjwt                        r

akamai                        fluxctl                       libmicrohttpd                 rabbitmq

algernon                      flyway                        libnice                       re2

amazon-ecs-cli                fmt                           libpng                        rebar3

ammonite-repl                 fn                            libpsl                        recutils

angle-grinder                 fonttools                     librealsense                  redis

angular-cli                   freetds                       libressl                      repo

anjuta                        fselect                       librsvg                       restic

annie                         futhark                       libsamplerate                 riemann-client

ansible                       fx                            libsecret                     rke

ansifilter                    gammaray                      libsodium                     robot-framework

antlr                         gauche                        libssh                        rom-tools

antlr4-cpp-runtime            gdal                          libstfl                       roswell

apache-drill                  gdb                           libuv                         rpm

apache-flink                  gdcm                          libvirt                       rswift

apache-geode                  geeqie                        libvmaf                       ruby

arcade-learning-environment   gegl                          libxml2                       ruby-build

astrometry-net                geos                          libxmlsec1                    rust

aubio                         get_iplayer                   libxslt                       salt

autorest                      gexiv2                        linkerd                       sbcl

aws-sdk-cpp                   git                           llvm                          sbt

awscli                        git-quick-stats               lmdb                          scalapack

babel                         gitbucket                     logstash                      schismtracker

babl                          gitlab-gem                    logtalk                       scipy

ballerina                     gitlab-runner                 lsdvd                         shellshare

basex                         glib                          lxc                           signify-osx

bash                          global                        mackup                        sip

bdw-gc                        gmic                          macvim                        siril

bigloo                        gmsh                          makensis                      skaffold

binaryen                      gmt                           mame                          skopeo

bind                          gnome-latex                   mapserver                     smartmontools

bison                         gnu-sed                       mariadb-connector-c           solr

bitcoin                       gnu-tar                       mariadb@10.2                  source-to-image

blackbox                      gnupg                         mas                           sox

blast                         gnuplot                       maxwell                       sphinx-doc

boost                         gnuradio                      mdcat                         spotbugs

bullet                        gnutls                        meson                         sqlcipher

cabextract                    go                            micronaut                     sqlmap

caf                           go-bindata                    midnight-commander            statik

caffe                         go@1.10                       mikutter                      stellar-core

cake                          gobject-introspection         minio                         subversion

capstone                      gocryptfs                     minio-mc                      sundials

catimg                        godep                         mint                          supervisor

ceres-solver                  goenv                         mkcert                        swi-prolog

certbot                       golang-migrate                mkl-dnn                       swiftformat

cfitsio                       gopass                        mkvtoolnix                    swiftlint

cgit                          goreleaser                    mockserver                    syncthing

cglm                          gowsdl                        mono                          sysbench

chakra                        gpsbabel                      mosquitto                     sysdig

checkstyle                    grafana                       mozjpeg                       tbb

chronograf                    grakn                         mruby                         tcc

circleci                      graph-tool                    mysql                         tcpreplay

citus                         graphite2                     nasm                          telegraf

clblast                       grep                          nativefier                    teleport

clojure                       groff                         neovim                        terraform

cmake                         groovy                        netcdf                        terragrunt

cockroach                     grpc                          netpbm                        tgui

cocoapods                     gst-plugins-ugly              newsboat                      theharvester

cointop                       gst-python                    nginx                         tika

commandbox                    gstreamermm                   nnn                           tippecanoe

conan                         gtk+3                         node                          tmuxinator-completion

confluent-oss                 gtk-doc                       node-build                    tomcat

container-diff                gtkmm3                        node@10                       tomcat@8

cp2k                          gzip                          node@6                        tomee-webprofile

create-dmg                    handbrake                     node@8                        topgrade

cryptopp                      haproxy                       nodenv                        tox

curl-openssl                  harfbuzz                      nsd                           traefik

cython                        haste-client                  numpy                         translate-shell

dartsim                       helmfile                      nuxeo                         travis

dcd                           highlight                     nwchem                        ucloud

dependency-check              http-parser                   octave                        uhd

dfmt                          hub                           opam                          unbound

diamond                       hugo                          open-mpi                      unnethack

diceware                      hwloc                         openblas                      urh

diffutils                     hydra                         opencoarrays                  uriparser

django-completion             hyperfine                     openconnect                   vala

dlib                          icemon                        opencv                        verilator

dmd                           imagemagick                   opencv@2                      vert.x

dnscontrol                    immortal                      openfortivpn                  vice

dnscrypt-wrapper              isync                         openldap                      vim

docfx                         itstool                       openmsx                       vim@7.4

docker-machine-parallels      jabba                         openvdb                       vips

doitlive                      jboss-forge                   orc-tools                     visp

dosbox-x                      jenkins                       osrm-backend                  vte3

dovecot                       jhipster                      pagmo                         weaver

doxygen                       jsonnet                       paket                         weboob

dpkg                          kakoune                       parallel                      webpack

druid                         kapacitor                     parallelstl                   weechat

dscanner                      kibana                        pdfpc                         wget

dub                           kibana@5.6                    pdftoedn                      whois

dvm                           kitchen-sync                  percona-server                wireguard-go

dwm                           knot-resolver                 perl                          wireguard-tools

e2fsprogs                     kontena                       petsc                         woboq_codebrowser

easyengine                    kops                          petsc-complex                 wolfssl

ed                            kubeless                      pgbadger                      wp-cli

efl                           kubernetes-cli                pgcli                         wp-cli-completion

eigen                         kubernetes-helm               pgweb                         wpscan

elasticsearch                 languagetool                  php                           wtf

emacs-clang-complete-async    laszip                        php-code-sniffer              wxmaxima

embulk                        ldc                           php-cs-fixer                  x264

emscripten                    leiningen                     picard-tools                  xcodegen

envconsul                     leptonica                     pilosa                        xonsh

erlang                        less                          pixman                        xsimd

erlang@20                     libassuan                     plantuml                      xtensor

eslint                        libav                         pngquant                      ydcv

ethereum                      libbi                         podofo                        yle-dl

evince                        libccd                        postgis                       you-get

exiv2                         libcds                        pre-commit                    youtube-dl

exploitdb                     libcec                        presto                        z3

eye-d3                        libcerf                       primesieve                    zeromq

fauna-shell                   libcouchbase                  prometheus                    zim

fb-client                     libdazzle                     protobuf                      znc

fbi-servefiles                libedit                       pulumi                        zola

ffmpeg                        libetpan                      pushpin                       zsh-completions

ffmpeg2theora                 libgpg-error                  pygitup                       zstd

ffmpeg@2.8                    libgsf                        python                        zurl

ffmpegthumbnailer             libgxps                       qemu

ffms2                         libhttpserver                 qmmp

==> Deleted Formulae

cctools                 ffmbc                   gradle@2.14             ld64                    pyexiv2

cctools-headers         gnome-doc-utils         gv                      php@5.6                 rock


==> Tapping pivotal/tap

Cloning into '/usr/local/Homebrew/Library/Taps/pivotal/homebrew-tap'...

remote: Enumerating objects: 17, done.

remote: Counting objects: 100% (17/17), done.

remote: Compressing objects: 100% (16/16), done.

remote: Total 17 (delta 0), reused 8 (delta 0), pack-reused 0

Unpacking objects: 100% (17/17), done.

Tapped 12 formulae (55 files, 42KB).

탭을 추가한 뒤 CLI 설치를 한다. 


$ brew intall springboot 


younghuui-MacBook-Pro:~ younghumin$ brew install springboot

==> Installing springboot from pivotal/tap

==> Downloading https://repo.spring.io/release/org/springframework/boot/spring-boot-cli/2.1.1.RELEASE/spring-boot-cli-2.

######################################################################## 100.0%

==> Caveats

Bash completion has been installed to:

  /usr/local/etc/bash_completion.d


zsh completions have been installed to:

  /usr/local/share/zsh/site-functions

==> Summary

🍺  /usr/local/Cellar/springboot/2.1.1.RELEASE: 7 files, 11.9MB, built in 5 seconds

younghuui-MacBook-Pro:~ younghumin$ spring --version

Spring CLI v2.1.1.RELEASE


설치된 버전 확인까지 완료 


$ spring --version 


                                    

반응형