'gradle'에 해당되는 글 17건

  1. 2017.11.02 [Gradle] Dynamic version cache 설정하기
  2. 2017.10.27 [Gradle] Dependency filename 구하기
  3. 2017.10.25 [Gradle] Use latest version on dependency jar.
  4. 2017.01.17 [Gradle] maven to gradle project 변환
  5. 2017.01.09 [Gradle] Gradle project 맛보기.
  6. 2016.02.01 [Elasticsearch] Intellij 에서 Latest Elasticsearch Import 시 Gradle 이슈
  7. 2016.02.01 [Intellij] Importing Gradle project - getting JAVA_HOME not defined yet

[Gradle] Dynamic version cache 설정하기

ITWeb/개발일반 2017. 11. 2. 21:45

지난 글과 함께 보시면 좋습니다.


[지난 글]

[Gradle] Dependency filename 구하기

[Gradle] Use latest version on dependency jar.


[참고문서]

https://docs.gradle.org/current/dsl/org.gradle.api.artifacts.ResolutionStrategy.html


[설정]

configurations {

dependencyFn

}


configurations.dependencyFn {

resolutionStrategy.cacheDynamicVersionsFor 10, 'minutes'

}


dependencies {

dependencyFn group: "org.apaceh.lucene.analysis.arirang", name: "arirang-dictionary", \

version: "+", changing: true

}


:

[Gradle] Dependency filename 구하기

ITWeb/개발일반 2017. 10. 27. 09:26

차분히 Gradle DSL 을 읽어 보는 것도 좋습니다.

[참고링크]

https://docs.gradle.org/current/dsl/index.html


Gradle 의 configurations 설정을 통해서 구해 보겠습니다.

FileTree 를 이용해서도 할 수 있습니다.

[build.gradle]

configurations {

dependencyFn

}


dependencies {

dependencyFn group: "org.apaceh.lucene.analysis.arirang", name: "arirang-dictionary", \

version: "+", changing: true

}


task requiredResourceFilename {

configurations.dependencyFn.files.each {

if ( it.getName().indexOf("arirang-dictionary") > -1 ) {

arirangDicFilename = it.getName().tokenize('-').last()


println arirangDicFilename

}

}

}


:

[Gradle] Use latest version on dependency jar.

ITWeb/개발일반 2017. 10. 25. 17:36

Gradle dependency jar 에 대한 최신 정보 반영을 위해서는 아래와 같이 수정 하면 됩니다.


ASIS)

compile "com.google.api.grpc:proto-google-common-protos:0.1.9"

drivers group: "com.google.api.grpc", name: "cproto-google-common-protos", version: "0.1.9", changing: true


TOBE)

compile "com.google.api.grpc:proto-google-common-protos:+"

drivers group: "com.google.api.grpc", name: "cproto-google-common-protos", version: "+", changing: true


항상 최신 버전을 사용하고 싶으실때 쓰시면 좋을 듯 합니다.


참고문서)

https://docs.gradle.org/2.11/userguide/dependency_management.html#sec:dependency_resolution

23.7. How dependency resolution works

https://docs.gradle.org/2.11/userguide/artifact_dependencies_tutorial.html#N1059B

7.2. Declaring your dependencies


:

[Gradle] maven to gradle project 변환

ITWeb/개발일반 2017. 1. 17. 12:35

Maven 프로젝트를 Gradle 프로젝트로 간단하게 변환하기 입니다.


$ gradle init --type pom


:

[Gradle] Gradle project 맛보기.

ITWeb/개발일반 2017. 1. 9. 13:46

Intellij 를 이용한 gradle project 를 생성하는 아주 초보적인 내용입니다.

개인적인 생각으로는 single project 이고 maven 에 익숙하시면 그냥 maven project 로 개발 하시는게 편하실 수 있습니다.


Step 0)

- Gradle 설치가 되어 있어야 합니다.

- Java 설치가 되어 있어야 합니다.

- Path 설정이 되어 있어야 합니다.


Step 1)

New -> Project -> Gradle 선택을 하시면 됩니다.


Step 2)

maven project 생성 할 때와 동일하게 GroupId, ArtifactId, Version 정보를 등록 하면 됩니다.


Next 버튼을 누르고 누르고 나면 기본 Gradle Project 가 생성이 됩니다.


Step 3) build.gradle & settings.gradle

기본적인 빌드 환경과 정보들을 작성 하게 됩니다.

maven 의 pom.xml 과 비슷하다고 보시면 될 것 같습니다.


Step 4) module 추가하기

해당 프로젝트에서 new -> module 하시면 됩니다.

동일하게 gradle project 으로 해서 추가했습니다.


Step 5) 기본 java application directory 생성

src/main/java

src/main/resources

src/test/java

src/test/resources


Step 6) Java main class 생성

public class HelloWorld {

public static void main (String[] args) {
System.out.println("Hello World!!");
}
}


Step 7) Build & Run

$ gradle build


$ java -jar ./helloworld/build/libs/helloworld-1.0-SNAPSHOT.jar HelloWorld

./helloworld/build/libs/helloworld-1.0-SNAPSHOT.jar에 기본 Manifest 속성이 없습니다.


# manifest 속성을 선언 안해서 그렇습니다.
해당 프로젝트의 build.gradle 에 선언 하면 됩니다.
excutable jar 생성 하는 거랑 같은 거라고 보시면 됩니다.
jar {
manifest {
attributes 'Main-Class': 'org.jjeong93.hello.HelloWorld'
}
}

$ java -jar ./helloworld/build/libs/helloworld-1.0-SNAPSHOT.jar HelloWorld

Hello World!!


일반적인 Java application 만드는 걸 예제로 보여 드렸습니다.
저는 기존 maven project 를 gradle multi project 로 마이그레이션 하려고 합니다.
dependency 설정 하는 번거로움이 좀 있기는 하지만 마이그레이션 방법을 제공 하고 있으니 참고 하면 될 것 같습니다.

[참고문서]


:

[Elasticsearch] Intellij 에서 Latest Elasticsearch Import 시 Gradle 이슈

Elastic/Elasticsearch 2016. 2. 1. 23:27

일단 증상은 아래와 같은 에러가 발생을 해서 intellij 에서 clone 한 elasticsearch의 master 브랜치 import 가 안됩니다.

이게 저만 그런건지 환경의 문제 인건지 시간이 별로 없어서 확인을 끝까지 못했기 때문에 일단 기록 부터 합니다.

아래는 우회 하는 방법을 기록 했습니다.


[에러 메시지]

- build.gradle 에 아래와 같은 조건이 있습니다.

if (System.getProperty('idea.active') != null && ideaMarker.exists() == false) {

  throw new GradleException('You must run gradle idea from the root of elasticsearch before importing into IntelliJ')

}


[우회 방법]

- maven project로 구성된 다른 branch 를 checkout 받아 intellij로 import 합니다.

$ git checkout 2.2


:

[Intellij] Importing Gradle project - getting JAVA_HOME not defined yet

ITWeb/개발일반 2016. 2. 1. 21:43

문제 해결 링크)

http://stackoverflow.com/questions/31215452/intellij-idea-importing-gradle-project-getting-java-home-not-defined-yet


기본적으로 jdk 설치 및 JAVA_HOME 설정까지 완료 했으나 제목과 같은 에러가 발생 할 때 사용하는 해결방법 입니다.

: