메뉴 건너뛰기

Cloudera, BigData, Semantic IoT, Hadoop, NoSQL

Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.


sbt centos에 sbt 0.13.5 설치

총관리자 2016.05.30 15:21 조회 수 : 352

1. 다운로드

wget http://dl.bintray.com/sbt/rpm/sbt-0.13.5.rpm


2. 설치

yum localinstall sbt-0.13.5.rpm


3. sbt실행

sbt

==>  

Getting org.scala-sbt sbt 0.13.5 ... 


설치후 처음 실행할때 "Getting org.scala-sbt sbt 0.13.5 ..."가 표시되면서 멈춘것처럼 보이는데.. default jar파일들을 다운로드 받는 동안 시간이 걸리게 되는데 15분이내에 끝나므로 완료될때 까지 기다리면 된다.


4. building하고 *.jar실행(실행하는 곳에 project.sbt가 있어야함)

3.에서 실행한 sbt에서 package를 입력한다.


5. Simple Build Tool.


Coursera의 교육과정 중에서 [[마틴 오더스키]]가 진행하는 [[Functional Programming Principles in Scala]]와 [[Principles of Reactive Programming]]은 [[스칼라]] 언어로 프로그래밍 과제가 제시된다. 이때 사용하는 빌드 도구가 [sbt(Simple Build Tool)](http://www.scala-sbt.org/)이다.


프로젝트 폴더에서 `sbt` 명령으로 **sbt프롬프트**에 진입하고 나면 sbt명령으로 대상을 빌드하거나 테스트할 수 있다. 앞의 두 교육과정에서는 과제를 제출하는 것도 sbt에서 가능하다.


    <project dir>

    +-- build.sbt

    +-- project/

    |   +-- build.properties

    |   +-- ProgFunBuild.scala  ; submit 태스크정의

    |   ..

    +-- target/

    |   +-- scala-2.10          ; 빌드 결과물이 여기에 들어간다.


## 설치


맥에서는 brew를 이용하여 쉽게 설치할 수 있다. `brew install sbt`로 설치하면 `sbt console`로 스칼라를 사용할 수도 있는데, 스칼라를 따로 설치하지 않으면 콘솔에서 직접 `scala` 명령을 사용할 수 없다는 점이 특이하다.


리눅스/맥에서 수동으로 설치하는 것도 매우 간단한다. 부트스트랩 격인 sbt-launcher.jar를 받고, 이를 호출하는 sbt.sh 스크립트를 만들어주면 된다. launcher jar파일이 작아서 한번 놀라고, 처음 실행했을 때 엄청나게 다운로드를 많이 하는데서 또 한 번 놀라게 된다.



## 주요명령


* compile

* test

* package

* clean

* reload

* update

* settings

* inspect - 빌드 설정 값을 자세히 살펴보기 위해 사용한다. `sbt inspect sourceManaged`


## 플러그인 


[다양한 플러그인](http://www.scala-sbt.org/release/docs/Community/Community-Plugins.html)이 있어서 빌드에 필요한 명령들을 가져다 쓸 수 있다. 


* *assembly* - https://github.com/sbt/sbt-assembly `sbt assembly`로 의존성을 전부 머지한 jar파일을 생성해준다.

* *eclipse* - https://github.com/typesafehub/sbteclipse `sbt eclipse`로 현재 의존성을 반영하여 이클립스 프로젝트 정보를 생성한다.

* *git* - https://github.com/sbt/sbt-git sbt프롬프트에서 git명령을 바로 사용할 수 있게 해준다.

* *antlr4* - https://github.com/ihji/sbt-antlr4 [[ANTLR]]를 사용할 수 있게 해준다. 






--------------초기 실행시 console로그중 일부분--------

Getting org.scala-sbt sbt 0.13.5 ...

downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/sbt/0.13.5/jars/sbt.jar ...

        [SUCCESSFUL ] org.scala-sbt#sbt;0.13.5!sbt.jar (3989ms)

downloading http://repo1.maven.org/maven2/org/scala-lang/scala-library/2.10.4/scala-library-2.10.4.jar ...

        [SUCCESSFUL ] org.scala-lang#scala-library;2.10.4!scala-library.jar (108767ms)

downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/main/0.13.5/jars/main.jar ...

        [SUCCESSFUL ] org.scala-sbt#main;0.13.5!main.jar (6702ms)

downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/compiler-interface/0.13.5/jars/compiler-interface-src.jar ...

        [SUCCESSFUL ] org.scala-sbt#compiler-interface;0.13.5!compiler-interface-src.jar (3713ms)

downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/compiler-interface/0.13.5/jars/compiler-interface-bin.jar ...

        [SUCCESSFUL ] org.scala-sbt#compiler-interface;0.13.5!compiler-interface-bin.jar (4428ms)

downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/precompiled-2_8_2/0.13.5/jars/compiler-interface-bin.jar ...

        [SUCCESSFUL ] org.scala-sbt#precompiled-2_8_2;0.13.5!compiler-interface-bin.jar (4452ms)

downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/precompiled-2_9_2/0.13.5/jars/compiler-interface-bin.jar ...

        [SUCCESSFUL ] org.scala-sbt#precompiled-2_9_2;0.13.5!compiler-interface-bin.jar (4663ms)

downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/precompiled-2_9_3/0.13.5/jars/compiler-interface-bin.jar ...

        [SUCCESSFUL ] org.scala-sbt#precompiled-2_9_3;0.13.5!compiler-interface-bin.jar (4585ms)

downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/actions/0.13.5/jars/actions.jar ...

        [SUCCESSFUL ] org.scala-sbt#actions;0.13.5!actions.jar (4955ms)

downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/main-settings/0.13.5/jars/main-settings.jar ...

        [SUCCESSFUL ] org.scala-sbt#main-settings;0.13.5!main-settings.jar (4305ms)

downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/interface/0.13.5/jars/interface.jar ...

        [SUCCESSFUL ] org.scala-sbt#interface;0.13.5!interface.jar (4104ms)

downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/io/0.13.5/jars/io.jar ...

        [SUCCESSFUL ] org.scala-sbt#io;0.13.5!io.jar (4655ms)

downloading http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/ivy/0.13.5/jars/ivy.jar ...

        [SUCCESSFUL ] org.scala-sbt#ivy;0.13.5!ivy.jar (4051ms)

.......

번호 제목 날짜 조회 수
281 spark-submit으로 spark application실행하는 다양한 방법 2016.05.25 384
280 HDFS에서 quota 설정 방법및 확인 방법 2022.03.30 381
279 Collections.sort를 이용한 List<User>형태의 데이타 정렬(숫자, 문자에 대해서 각각 asc/desc및 복합정렬) 2016.12.15 381
278 권한회수 및 권한부여 명령 몇가지 2017.11.16 378
277 쿠버네티스(k8s) 설치 및 클러스터 구성하기 2019.10.19 377
276 [sentry]role부여후 테이블명이 변경되어 오류가 발생할때 조치방법 2018.10.16 377
275 ResultSet에서 데이타를 List<Map<String,String>>형태로 만들어서 리턴하는 소스(Collections.sort를 이용한 정렬 가능) 2016.12.15 376
274 sparql 1.1 BIND(if() as ?bind변수) 버그로 추정되는 문제점및 해결방안 -> select 문에 (if(,,) as ?bind변수) file 2016.01.21 375
273 [Sentry] sentry메타 DB를 이용하여 테이블에 매핑되어 있는 role명칭 찾는 방법. 2022.06.22 374
272 임시 테이블에서 데이터를 읽어서 partitioned table에 입력하는 impala SQL문 예시 2023.11.10 373
271 mysql sqoop작업을 위해서 mysql-connector-java.jar을 추가하는 경우 확실하게 인식시키는 방법 2020.05.11 372
270 build할때 unmappable character for encoding MS949 에러 발생시 조치사항 2016.08.03 372
269 SPARQL의 유형, SPARQL 만들기등에 대한 설명 2016.02.18 372
268 Cluster Install -> Provide Login Credentials에서 root가 아닌 다른 사용자를 지정하는 경우 "Exhausted available authentication methods"오류 발생시 조치방법 2018.05.22 368
267 schema.xml vs managed-schema 지정 사용하기 - 두개를 동시에 사용할 수는 없음 2017.07.09 368
266 CentOS에서 리눅스(Linux) 포트 열기, 방화벽 설정/해제 등. 2016.03.14 368
265 [CentOS] 네트워크 설정 2018.03.26 366
264 [sbt] sbt 0.13.11 를 windows에 설치하고 scala프로그램을 compile해서 jar파일 만들기 2016.07.11 364
263 Components of the Impala Server 2018.03.21 363
262 [Dovecot] -ERR [SYS/PERM] Permission denied 2017.06.13 362
위로