Upload
sukjin-yun
View
3.320
Download
2
Embed Size (px)
Citation preview
With Gradle & Maven
Enterprise Build
Gradle 설치
Gradle 사이트에 방문해서 download 메뉴를 클릭하고 zip파일을
다운받으세요.
Zip파일의 압축을 풀어줍니다
1
환경변수 등록
GRADLE_HOME
C:\gradle\gradle-1.6
2
확인
Gradle 버전이 출력된다면
기본적인 설치는 끝났습니다.
3
Gradle Project 생성
Build.gradle 파일을 정의해서 사용할 수 있음
Maven에서 phase를 입력했던 것처럼 task를 입력해서 실행함
project.description = 'first gradle' task first <<{ println 'running first project' + project.description }
4
Gradle 실행
Gradle build 파일이 있는 폴더로 이동
Build.gradle에 정의한 task를 파라메터로 입력
5
다중task 설정 및 기본 task설정
project.description = 'first gradle'
defaultTasks 'second'
task first{
println 'running first project' + project.description
}
task second{
doFirst{
println "second task called"
}
}
defaultTasks 에 정의된 Task가 gradle 명령 사용시에 기본적으로 사용됨 여러 개를 등록할 수도 있음 defaultTasks ‘second’, ‘first’
6
순차적으로 실행하고 싶어요
project.description = 'first gradle' defaultTasks 'second' task first{ println 'running first project'+project.description } task second(dependsOn:first){ doFirst{ println "second task called" } }
7
Maven Gradle 프로퍼티 비교
maven gradle 기본값
groupId group 공백
artifactId name | archivesBaseName 프로젝트 디렉토리명
version version unspecified
name n/A N/A
description description null
8
Gradle eclipse plugin 설치
9
Gradle eclipse plugin 설치확인
10
Eclipse로 gradle project import
지금껏 build.gradle 파일을 이용해서 콘솔로 빌드했던 프로젝트를 import 해봅시다.
11
Eclipse로 gradle project import2
에러메시지가 있다는 건
언제나 좋은 겁니다.
‘내가 왜 화났는지 맞춰봐’보다
100만배 편함.;
Build Model 버튼을 클릭하세요.
12
Eclipse로 gradle project import2
Eclipse 프로젝트 형태로 변환해줍니다.
13
Eclipse로 gradle project import3
Import 할 프로젝트를 체크하세요.
14
Eclipse로 gradle project import4
변환완료
15
적용한 eclipse 버전
16
빌드결과물 타입
packaging war == apply plugin ‘war’
Packaging jar == apply plugin ‘java’
17
Dependency Management
<repositories>
<repository>
<id>central</id> <url>http://repo1.maven.org/maven2/</url>
</repository>
<repositories>
18
repositories { mavenCentral() }
Add library
dependencies{
compile ‘joda-time:joda-time:2.1’
}
19
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${org.springframework-version}</version>
<scope>compile</scope>
</dependency>
</dependencies>
Gradle Project 만들기
Sample Project 유형으로 Java QuickStart를 선택합니다.
20
21
Eclipse 에서 Gradle build
compileJava task선택
22
Gradle 로 java Compile
23
Gradle Muliti Project
24
프로젝트 간 의존관계설정
25
Settings.gradle
A B
Include “my-lib” “product”
mylib Multi-gradle
멀티 컴파일
26
라이브러리 참조 설정 Central은
http://repo.mycompany.com/maven2
Maven중앙저장소
Local은
Maven에 정의된 로컬저장소
27
repositories { mavenCentral() mavenLocal() }
Gradle에서 기본적으로 라이브러리가 저장되는 폴더
라이브러리 업데이트
28
Refresh all 또는 Refresh dependencies
이클립스 쓰기 싫은데요..
29
Migration
좋아 a,bc … z
정말 좋아 ㄱ.ㄴ.ㄷ
좋으면 니가 적용해.
…………………..
관두면 오빠가 나 먹여살릴거야?
……………… 30
Migration m2 -> gradle
31
As is maven
Migration m2 -> gradle
32
Gradle 이 버전업을 하면서 기존에 maven2gradle이 https://github.com/jbaruch/maven2gradle 완벽하게 동작하지 않을 뿐만 아니라 gradle team에서 자체적으로 Maven2gradle에 상응하는 bootstrap plugin을 만들었습니다.
Bootstrap plugin 전제조건
1. 기존 프로젝트가 maven3 버전으로 빌드되어야 합니다.
Mvn 커멘드가 제대로 동작하는지 확인하세요.
33
Bootstrap plugin 사용
34
Gradle 버전확인 (1.2) 에서만 사용
35
Gradle 1.6 로드실패 Gradle 1.2
Bootstrap plugin 로드
Bootstrap plugin 실행
gradle maven2Gradle 실행
36
변환 확인
37
Settings.gradle
Build.gradle
웹프로젝트 만들기#1
플러그인 추가
apply plugin: 'war'
apply plugin: 'jetty'
apply plugin: 'eclipse-wtp'
38
웹 디펜던시 추가 Version 관계
http://tomcat.apache.org/whichversion.html
39
dependencies{ providedCompile('org.apache.geronimo.specs:geronimo-servlet_3.0_spec:1.0') runtime 'org.apache.geronimo.specs:geronimo-jsp_2.2_spec:1.2' }
Geronimo javaEE spec을 구현하는 사이트
jettyRun으로 실행
40
Webapp 가 기본디렉토리
To Other Time
To Other place
To Other Us 41