메뉴 건너뛰기

Cloudera, BigData, Semantic IoT, Hadoop, NoSQL

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


1. eclipse 에서 프로젝트명에서 우측 마우스 Gradle->Refresh Dependencies를 누르면 관련 jar파일을 다운로드한다.
2. eclipse 에서 프로젝트명에서 우측 마우스 Run As -> Gradle Build-> Gradle Tasks에서 "jar"를 입력하고 실행하면
build/libs밑에 jar파일이 생성된다.


---------------------------------build.gradle파일-------------------------
group 'com.gooper.icbms.sda'
version '2.0'

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'eclipse-wtp'
apply plugin: 'maven'
apply plugin: 'application'
//apply plugin: 'com.github.johnrengelman.shadow'

compileJava.options.encoding = 'UTF-8'  

sourceCompatibility = 1.7

def nexusUrl = 'http://www.gooper.com'

repositories {
     // mavenCentral()
     maven { url "http://mesir.googlecode.com/svn/trunk/mavenrepo" }
     maven { url "https://code.lds.org/nexus/content/groups/main-repo" } 
     maven { url "${nexusUrl}/content/groups/gooper-public/" }

     jcenter()
}

task writeNewPom << {
    pom {
        project {
            inceptionYear '2014'
            licenses {
                license {
                    name 'The Apache Software License, Version 2.0'
                    url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
                    distribution 'repo'
                }
            }
        }
    }.writeTo("pom.xml")
}

configurations.all {
    // check for updates every build
    resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}

configurations {    
    provided
    provided.extendsFrom(compile)
}

sourceSets {
    main.compileClasspath += configurations.provided
    test.compileClasspath += configurations.provided
    test.runtimeClasspath += configurations.provided
}

eclipse.classpath.plusConfigurations += [ configurations.provided ]

dependencies {
    // jena
    /*
    compile group: 'org.apache.jena', name: 'jena-arq', version:'3.0.1'
    compile group: 'org.apache.jena', name: 'jena-base', version:'3.0.1'
    compile group: 'org.apache.jena', name: 'jena-core', version:'3.0.1'
    compile group: 'org.apache.jena', name: 'jena-iri', version:'3.0.1'
    compile group: 'org.apache.jena', name: 'jena-shaded-guava', version:'3.0.1'
    compile group: 'org.apache.jena', name: 'jena-tdb', version:'3.0.1'
    compile group: 'org.apache.jena', name: 'jena-fuseki', version:'2.3.1'
    
    // elephas
    compile group: 'org.apache.jena', name: 'jena-elephas-common', version:'3.0.1'
    compile group: 'org.apache.jena', name: 'jena-elephas-io', version:'3.0.1'
    compile group: 'org.apache.jena', name: 'jena-elephas-mapreduce', version:'3.0.1'
    */
    
    compile group: 'org.apache.jena', name: 'jena-arq', version:'3.1.0'
    compile group: 'org.apache.jena', name: 'jena-base', version:'3.1.0'
    compile group: 'org.apache.jena', name: 'jena-core', version:'3.1.0'
    compile group: 'org.apache.jena', name: 'jena-iri', version:'3.1.0'
    compile group: 'org.apache.jena', name: 'jena-shaded-guava', version:'3.1.0'
    compile group: 'org.apache.jena', name: 'jena-tdb', version:'3.1.0'
    compile group: 'org.apache.jena', name: 'jena-cmds', version:'3.1.0'
    
    compile group: 'org.apache.jena', name: 'jena-fuseki', version:'2.3.1'
    
    // elephas
    compile group: 'org.apache.jena', name: 'jena-elephas-common', version:'3.1.0'
    compile group: 'org.apache.jena', name: 'jena-elephas-io', version:'3.1.0'
    compile group: 'org.apache.jena', name: 'jena-elephas-mapreduce', version:'3.1.0'
    
    
    compile group: 'opensymphony', name: 'quartz', version:'1.6.3'
    compile group: 'com.ibm.icu', name: 'icu4j', version:'51.2'
    compile group: 'javax.transaction', name: 'jta', version:'1.1'
    
    //springframework
    provided(group: 'org.springframework', name: 'spring-context', version:'4.0.5.RELEASE') { exclude(module: 'commons-logging') }
    provided group: 'org.springframework', name: 'spring-web', version:'4.0.5.RELEASE'
    provided group: 'org.springframework', name: 'spring-webmvc', version:'4.0.5.RELEASE'
    provided group: 'org.springframework', name: 'spring-aop', version:'4.0.5.RELEASE'
    provided group: 'org.springframework', name: 'spring-beans', version:'4.0.5.RELEASE'
    provided group: 'org.springframework', name: 'spring-context-support', version:'4.0.5.RELEASE'
    provided group: 'org.springframework', name: 'spring-core', version:'4.0.5.RELEASE'
    provided group: 'org.springframework', name: 'spring-jdbc', version:'4.0.5.RELEASE'
    
    // aspect
    compile (group: 'org.aspectj', name: 'aspectjrt', version:'1.7.3') {exclude (group:"org.slf4j", module:"slf4j-api")}
    compile group: 'org.aspectj', name: 'aspectjweaver', version:'1.7.3'
    compile group: 'org.aspectj', name: 'aspectjtools', version:'1.7.3'
    
    /*
    //compile group: 'org.slf4j', name: 'slf4j-api', version:'1.6.6'
    //compile group: 'org.slf4j', name: 'jcl-over-slf4j', version:'1.6.6'
    //compile group: 'org.slf4j', name: 'slf4j-log4j12', version:'1.6.6'
    */
    
    //json
    compile "org.codehaus.jackson:jackson-mapper-asl:1.1.1"
    compile "org.codehaus.jackson:jackson-core-asl:1.1.1" 
    compile "com.googlecode.json-simple:json-simple:1.1.1"
    
    //gson
    compile group: 'com.google.code.gson', name: 'gson', version:'2.4'
    
    // common/commons
    compile group: 'commons-collections', name: 'commons-collections', version: '3.2'
    compile group: 'commons-dbcp', name: 'commons-dbcp', version:'1.4'    
    compile group: 'commons-io', name: 'commons-io', version:'2.0.1'
    compile group: 'commons-fileupload', name: 'commons-fileupload', version:'1.2.2'
    compile group: 'commons-codec', name: 'commons-codec', version:'1.10'
    //compile group: 'org.apache.commons', name: 'commons-io', version:'1.3.2'    
   
    compile(group: 'log4j', name: 'log4j', version:'1.2.15') {
exclude(module: 'mail')
exclude(module: 'jms')
exclude(module: 'jmxtools')
exclude(module: 'jmxri')
    }
    
    
    // mongodb
    compile group: 'org.mongodb', name: 'mongo-java-driver', version:'2.10.1'
    // mariadb
    compile group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version:'1.3.3'
    
    //mybatis
    compile group: 'org.mybatis', name: 'mybatis', version:'3.2.2'
    compile group: 'org.mybatis', name: 'mybatis-spring', version:'1.2.0'
    
// kafka    
    //compile (group: 'org.apache.kafka', name: 'kafka_2.11', version:'0.9.0.1') { exclude( group: 'org.scala-lang', module: 'scala-library') }
    compile group: 'org.apache.kafka', name: 'kafka_2.11', version:'0.9.0.1'
    
    // avro
    compile group: 'org.apache.avro', name: 'avro', version:'1.7.7'
    //compile group: 'org.apache.avro', name: 'avro-tools', version:'1.7.7'
    
    // spark
    provided (group: 'org.apache.spark', name: 'spark-streaming-kafka_2.11', version:'1.6.2') {exclude (group: 'org.scala-lang', module: 'scala-library')}

}

/*
buildscript {
  repositories {
    maven {
      url "https://plugins.gradle.org/m2/"
    }
  }
  dependencies {
    classpath "com.github.jengelman.gradle.plugins:shadow:1.2.3"
  }
}

shadowJar {
  mergeServiceFiles()
  transform(ManifestResourceTransfomer) {
    mainClass = 'org.apache.jena.fuseki.cmd.FusekiCmd'
  }
  transform(ServicesResourceTransformer)
  transform(ApacheLicenseResourceTransformer)
  transform(ApacheNoticeResourceTransformer)
}
*/

jar {
  from {
      configurations.compile.collect {it.isDirectory() ? it : zipTree(it)}
  }
  manifest {
      attributes("Implementation-Title": "SDA-COMMON", "Implementation-Version": version)
  }
}

uploadArchives {
    repositories {
        mavenDeployer {
            repository(url: "${nexusUrl}/content/repositories/gooper-releases/"){
                authentication(userName: nexusUsername, password: nexusPassword)
            }
            snapshotRepository(url: "${nexusUrl}/content/repositories/gooper-snapshots") {
                authentication(userName: nexusUsername, password: nexusPassword)
            }
        }
    }
}
번호 제목 날짜 조회 수
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 372
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
위로