달력

52019  이전 다음

  •  
  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  

gradle로 자바 빌드하기 1/2 

위 글에 이어집니다.


HelloWorld.java를 다음과 같이 수정합니다.

package hello;


import org.joda.time.LocalTime;


public class HelloWorld {

  public static void main(String[] args) {

    LocalTime currentTime = new LocalTime();

    System.out.println("The current local time is: " + currentTime);


    Greeter greeter = new Greeter();

    System.out.println(greeter.sayHello());

  }

}


joda의 LocalTime 클래스를 사용합니다.

이 상태에서 gradle build 를 실행하면 다음과 같은 에러 메시지를 만나게 됩니다.

gradle build

:compileJava

/Users/kenu/tmp/gradle-start/src/main/java/hello/HelloWorld.java:3: error: package org.joda.time does not exist

import org.joda.time.LocalTime;

                    ^

/Users/kenu/tmp/gradle-start/src/main/java/hello/HelloWorld.java:7: error: cannot find symbol

    LocalTime currentTime = new LocalTime();

    ^

  symbol:   class LocalTime

  location: class HelloWorld

/Users/kenu/tmp/gradle-start/src/main/java/hello/HelloWorld.java:7: error: cannot find symbol

    LocalTime currentTime = new LocalTime();

                                ^

  symbol:   class LocalTime

  location: class HelloWorld

3 errors

:compileJava FAILED


FAILURE: Build failed with an exception.


* What went wrong:

Execution failed for task ':compileJava'.

> Compilation failed; see the compiler error output for details.


* Try:

Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.


BUILD FAILED


Total time: 3.239 secs


build.gradle 파일에 필요한 jar 파일을 명시합니다.

apply plugin: 'java'


repositories { mavenCentral() }

dependencies {

  compile "joda-time:joda-time:2.2"

}


다시 gradle build 를 실행하면 joda-time-2.2.jar 파일을 인터넷을 통해 maven central 저장소에서 자동으로 다운로드 받아서 빌드합니다.

gradle build

:compileJava

Download http://repo1.maven.org/maven2/joda-time/joda-time/2.2/joda-time-2.2.pom

Download http://repo1.maven.org/maven2/joda-time/joda-time/2.2/joda-time-2.2.jar

:processResources UP-TO-DATE

:classes

:jar

:assemble

:compileTestJava UP-TO-DATE

:processTestResources UP-TO-DATE

:testClasses UP-TO-DATE

:test UP-TO-DATE

:check UP-TO-DATE

:build


BUILD SUCCESSFUL


Total time: 7.106 secs


maven과 다르게 로컬에 jar를 관리하는 폴더는 .m2가 아닌 .gradle 폴더입니다.

./.gradle/caches/artifacts-26/filestore/joda-time/joda-time/2.2/jar/a5f29a7acaddea3f4af307e8cf2d0cc82645fd7d/joda-time-2.2.jar


행복하세요.




Posted by 케누 kenu허광남