메뉴 건너뛰기

Cloudera, BigData, Semantic IoT, Hadoop, NoSQL

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


1. sbt-assembly 추가(project/assembly.sbt파일에 아래 내용을 추가함)

  addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.3")


2. project.sbt(혹은 build.sbt) 파일에 아래의 내용을 추가한다.

(scala 2.10.4에 spark 1.5.0을 사용하는 하는 프로그램을 작성하는 경우임)


import sbtassembly.AssemblyPlugin._


name := "icbms"


version := "1.0"


 //scalaVersion := "2.11.8"

scalaVersion := "2.10.4"


resolvers += "Akka Repository" at "http://repo.akka.io/releases/"


libraryDependencies ++= Seq(

("org.apache.spark" %% "spark-core" % "1.5.0" % "provided")

.exclude("org.mortbay.jetty", "servlet-api").

    exclude("commons-beanutils", "commons-beanutils-core").

    exclude("commons-collections", "commons-collections").

    exclude("commons-logging", "commons-logging").

    exclude("com.esotericsoftware.minlog", "minlog").exclude("com.codahale.metrics", "metrics-core")

,

"org.apache.spark" %% "spark-sql" % "1.5.0" ,

"org.apache.spark" % "spark-streaming_2.10" % "1.6.2",

"org.apache.spark" % "spark-streaming-kafka_2.10" % "1.6.2" ,

"org.apache.avro" % "avro" % "1.7.7" 

)


assemblyMergeStrategy in assembly := {

    case PathList("javax", "servlet", xs @ _*) => MergeStrategy.last

    case PathList("javax", "activation", xs @ _*) => MergeStrategy.last

    case PathList("org", "apache", xs @ _*) => MergeStrategy.last

    case PathList("com", "google", xs @ _*) => MergeStrategy.last

    case PathList("com", "esotericsoftware", xs @ _*) => MergeStrategy.last

    case PathList("com", "codahale", xs @ _*) => MergeStrategy.last

    case PathList("com", "yammer", xs @ _*) => MergeStrategy.last

    case "about.html" => MergeStrategy.rename

    case "META-INF/ECLIPSEF.RSA" => MergeStrategy.last

    case "META-INF/mailcap" => MergeStrategy.last

    case "META-INF/mimetypes.default" => MergeStrategy.last

    case "plugin.properties" => MergeStrategy.last

    case "log4j.properties" => MergeStrategy.last

    case x =>

        val oldStrategy = (assemblyMergeStrategy in assembly).value

        oldStrategy(x)

}


3. fat jar만들기(프로젝트의 project 폴더에서 아래의 명령을 실행한다)

 sbt clean

 sbt update

 sbt compile

 sbt package

 sbt assembly


혹은 sbt clean update compile package assembly 를 연속 실행해도 된다.



* 참고 : https://github.com/sbt/sbt-assembly/

번호 제목 날짜 조회 수
690 Hive 사용법 및 쿼리 샘플코드 2013.03.07 5443
689 upsert구현방법(년-월-일 파티션을 기준으로) 및 테스트 script file 2018.07.03 5426
688 org.apache.hadoop.security.AccessControlException: Permission denied: user=hadoop, access=WRITE, inode="":root:supergroup:rwxr-xr-x 오류 처리방법 2014.07.05 5385
687 [Hive canary]Hive에 Metastore canary red alert및 hive log파일에 Duplicate entry '123456' for key 'NOTIFICATION_LOG_EVENT_ID'가 발생시 조치사항 2023.03.10 5353
686 mysql-server 기동시 Do you already have another mysqld server running on port 오류 발생할때 확인및 조치방법 2017.05.14 5346
685 banana pi에(lubuntu)에 hadoop설치하고 테스트하기 - 성공 file 2014.07.05 5344
684 빅데이터 분석을 위한 샘플 빅데이터 파일 다운로드 사이트 2014.04.28 5338
683 [CDP7.1.7]impala-shell수행시 간헐적으로 "-k requires a valid kerberos ticket but no valid kerberos ticket found." 오류 2023.11.16 5313
682 org.apache.hadoop.hbase.PleaseHoldException: Master is initializing 2013.03.15 5306
681 HBase, BigTable, Cassandra Schema Design file 2013.03.15 5299
680 [CDP7.1.7]Oozie job에서 ERROR: Kudu error(s) reported, first error: Timed out: Failed to write batch of 774 ops to tablet 8003f9a064bf4be5890a178439b2ba91가 발생하면서 쿼리가 실패하는 경우 2024.01.05 5298
679 Hive Query Examples from test code (1 of 2) 2014.03.26 5247
678 Cloudera의 API를 이용하여 impala의 실행되었던 쿼리 확인하는 예시 2018.05.03 5230
677 ping 안될때.. networking restart 날려주면 잘됨.. 2014.05.09 5219
676 [Kudu]ERROR: Unable to advance iterator for node with id '2' for Kudu table 'impala::core.pm0_abdasubjct': Network error: recv error from unknown peer: Transport endpoint is not connected (error 107) 2023.03.16 5212
675 HiveServer2인증을 PAM을 이용하도록 설정하는 방법 2018.07.21 5205
674 [Solr in Cloudera]Solr Data Directory변경 방법/절차 2023.04.21 5202
673 Windows7 64bit 환경에서 Apache Hadoop 2.7.1설치하기 2017.07.26 5201
672 kafka broker기동시 brokerId가 달라서 기동에 실패하는 경우 조치방법 2016.05.02 5190
671 의사분산모드에 hadoop설치및 ecosystem 환경 정리 2014.05.29 5170
위로