블로그 이미지
올해목표 // 10월 어학연수 떠나자~ 자수씨

카테고리

전체글 (1457)
Brand New! (28)
주절주절 (213)
MOT (11)
해외쇼핑 (49)
쇼핑노트 (150)
취미생활 (94)
iPhone (4)
Eclipse (121)
Google (83)
Spring (31)
JAVA (176)
JavaScript (59)
WEB (49)
Database (20)
OS (26)
Tools (8)
Tips (26)
IT정보 (1)
Book (21)
Programming (37)
외부행사 (43)
주변인들 (17)
여행노트 (60)
학교생활 (30)
회사생활 (52)
사회생활 (5)
외국어공부 (12)
잡동사니 (30)
Total
Today
Yesterday
 
04-30 01:17
 

달력

« » 2024.4
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
 

최근에 올라온 글

최근에 달린 댓글

Maven Compiler Plugin

JAVA/Maven / 2009. 2. 16. 02:32

지난번에 Archetype 만들기에서 Test 소스에 JUnit 4 의 문법을 사용했었습니다.
컴파일러 버전이 안맞아서 오류가 났었는데 그것을 해결하기 위해서는 아래와 같이 처리합니다.

prototype pom.xml 의 수정

maven-vicki-archetype/src/main/resources/archetype-resources/pom.xml


http://maven.apache.org/plugins/maven-compiler-plugin/ 를 참조하여 pom.xml 을 수정한 후,
다시 Local Repository 에 배포하여 프로젝트를 생성하면~ 정상적으로 테스트를 처리할 수 있습니다.

물론 소스상에 static import 와 annotation 이 있었다면 그 때 발견할 수도 있었겠죠~
테스트하는데 안되서 찾아본 내용이었습니다.



Posted by 자수씨
, |

Maven Archetype 만들기~

JAVA/Maven / 2009. 2. 16. 01:28

Maven 하면 할수록 재미있는 툴입니다.
Maven 으로 생성된 프로젝트의 구조를 내맘대로 바꿀 수 있는 archetype 을 만들어 보겠습니다.

1. Maven Archetype 을 위한 프로젝트의 생성

콘솔창을 띄워서 아래와 같은 명령을 실행합니다.
mvn archetype:create -DgroupId=kr.co.vicki -DartifactId=maven-vicki-archetype -DarchetypeArtifactId=maven-archetype-archetype

빌드가 성공하면 아래와 같은 구조가 생성이 됩니다.



2. pom.xml

생성된 pom.xml 은 다음과 같습니다.
maven-vicki-archetype/pom.xml


참고한 가이드에서는 groupId, artifactIdversion 이 필수적이라고 하네요~ (아닌가;;;)


3. archetype.xml

복사할 소스와 리소스들의 정보가 있는 archetype.xml 입니다.
필요한 소스나 리소스들이 있다면 이 곳에 정의를 합니다.
maven-vicki-archetype/src/main/resources/META-INF/maven/archetype.xml


<id>pom.xmlartifactId 와 같아야 합니다.

다른 태그들은 프로젝트의 각 부분들을 나타냅니다.
<sources> = src/main/java
<resources> = src/main/resources
<testSources> = src/test/java
<testResources> = src/test/resources
<siteResources> = src/site

복사되는 소스의 패키지 경로가 자동으로 설정되기 위해 수정을 합니다.
maven-vicki-archetype/src/main/resources/archetype-resources/src/main/java/App.java


maven-vicki-archetype/src/main/resources/archetype-resources/src/test/java/AppTest.java


4. prototype pom.xml

새로 만든 archetype 으로 생성되는 프로젝트의 pom.xml 의 원형입니다.
maven-vicki-archetype/src/main/resources/archetype-resources/pom.xml


실행옵션에 따라 값을 설정할 수 있도록 수정을 해주고, 기본적으로 포함시킬 dependency 들을 추가하거나 수정합니다.
저는 junit 버전을 최신버전인 4.5 로 변경하였습니다.

5. Local Repository 배포

maven-vicki-archetype 폴더로 이동하여 다음 명령어를 실행합니다.
mvn install

빌드가 성공하면 Local Repository 에 아래 경로로 배포가 되어있음을 확인할 수 있습니다.
[MavenLocalRepository]/kr/co/vicki/maven-vicki-archetype/1.0-SNAPSHOT


5. 새로만든 Archetype 의 Maven 프로젝트 생성

프로젝트를 생성할 경로에 다음의 명령을 실행합니다.
mvn archetype:create -DarchetypeGroupId=kr.co.vicki -DarchetypeArtifactId=maven-vicki-archetype -DarchetypeVersion=1.0-SNAPSHOT -DgroupId=vicki.group -DartifactId=vicki.artifact

archetypeGroupId, archetypeArtifactId archetypeVersion 은 위에서 만든 내용으로 설정하고,
groupId artifactId 는 생성될 프로젝트에 맞게 설정합니다.

생성된 프로젝트 구조





하핫... Test 코드에 어노테이션을 썼는데 mvn test 로는 빌드 실패가 나오네요~
org.apache.maven.plugins::maven-compiler-plugin 플러그인을 추가해야 할 것 같습니다~




Posted by 자수씨
, |

지난번에는 Maven 에서 GWT 프로젝트를 만들어 보았습니다.
[Maven] GWT 프로젝트 만들기

이제는 만들어진 프로젝트를 가지고 GWT 에뮬레이터를 실행시켜보겠습니다.

지난번에 만들었던 프로젝트에서 조금 바뀌었습니다.
일단 gwt 모듈의 설정파일을 수정합니다.
/kr.co.vicki.gwt.mytodo/src/main/java/kr/co/vicki/gwt/mytodo/Application.gwt.xml


아래와 같이 수정을 해야만 GWT Ext 라이브러리를 사용할 수 있습니다.



실제로 GWT Ext 에 사용하는 js, css, 이미지 파일들을 복사하는 작업을 해야합니다.
http://gwt-ext.com/download/


다운받은 gwtext-2.0.5.zip 의 압축을 풀고 해당 위치의 디렉토리들을 아래의 경로에 복사합니다.
/kr.co.vicki.gwt.mytodo/src/main/java/kr/co/vicki/gwt/mytodo/public
source 디렉토리는 필요없긴하나~ 검토의 귀차니즘으로 인해~ 그냥 복사함이 편합니다~


라이센스 문제로 인해 extjs 는 별도로 복사를 해야 합니다. ext-2.0.2.zip 의 압축을 풀고
위와 같은 위치해 해당 파일들과 디렉토리들을 복사합니다.
/kr.co.vicki.gwt.mytodo/src/main/java/kr/co/vicki/gwt/mytodo/public/js/ext



아래와 같이 구성이 되면됩니다.



이제 실제 구현될 파일을 수정해보도록 하겠습니다.
/kr.co.vicki.gwt.mytodo/src/main/java/kr/co/vicki/gwt/mytodo/client/Application.java


이제 에뮬레이터로 확인하는 일만 남았습니다.
프로젝트의 pom.xml 이 있는 위치에 콘솔창을 열고 아래와 같은 명령을 입력합니다.
(http://gwt-maven.googlecode.com/svn/docs/maven-googlewebtoolkit2-plugin/plugin-info.html 참조)

mvn googlewebtoolkit2:gwt

재대로 실행이 되지 않을 것입니다.


http://code.google.com/p/gwt-maven/wiki/M2FAQ 를 참조하여 다시 실행해보겠습니다.

mvn com.totsp.gwt:maven-googlewebtoolkit2-plugin:gwt




위와 같이 실행이 되면 성공입니다~~~



사실 처음 Maven 을 접했을때는 진입장벽이 있었는데 해보니깐 재미 있네요~~
Maven Plugin 도 기회가 된다면 만들어 보고 싶네요~~




Posted by 자수씨
, |

Maven 을 이용하여 GWT, GWT Ext 프로젝트 환경을 구성해보겠습니다.

ㅁ Maven GWT Plugin
http://code.google.com/p/gwt-maven/
위의 플러그인 프로젝트의 도큐먼트를 참조하여 프로젝트를 생성합니다.

적당한 위치에서 아래와 같은 명령을 통해 Maven 프로젝트를 생성합니다.
Group ID 와 Artifact ID 는 적당한 값으로 설정합니다.
mvn archetype:create -DarchetypeGroupId=com.totsp.gwt 
    -DarchetypeArtifactId=maven-googlewebtoolkit2-archetype 
    -DarchetypeVersion=1.0.3 
    -DremoteRepositories=http://gwt-maven.googlecode.com/svn/trunk/mavenrepo 
    -DgroupId=[Group ID]
    -DartifactId=[Artifact ID]

생성된 프로젝트의 구조는 아래와 같습니다.



생성된 폴더 바로 아래 pom.xml 이 있을 것입니다.




GWT Ext 에 대한 설정을 추가합니다. 기본 주소에서는 GWT Ext 라이브러리를 받을 수 없어 jboss 쪽에서 받습니다.



이클립스 프로젝트로 변환합니다.

mvn eclipse:eclipse



BUILD SUCCESSFUL 입니다.

일단은 만들었으니... 그담에는 쫌 이따가 ㅋㅋㅋ







Posted by 자수씨
, |

작년부터 관심을 가지고 있었던 maven 을 재성이형을 통해 익히게 되어서 정리를 해보았습니다.

Maven is a software tool for Java project management and build automation created by Sonatype's Jason van Zyl in 2002. It is similar in functionality to the Apache Ant tool (and to a lesser extent, PHP's PEAR and Perl's CPAN), but has a simpler build configuration model, based on an XML format. Maven is hosted by the Apache Software Foundation, where it was formerly part of the Jakarta Project.

출처: http://en.wikipedia.org/wiki/Apache_Maven


메이븐은 위의 내용을 빌리자만 간단하게 말해서 자바프로젝트 관리와 빌드의 자동화를 위한 툴입니다.

이제 메이븐이 무엇을 하는지 알았으니 사용해보기 위해 설치를 합니다.

ㅁ Apache Maven 의 설치

http://maven.apache.org 사이트로 접속을 하여서 좌측의 Download 링크를 클릭합니다.


필자의 설치환경이 윈도우즈이기 때문에 Maven-2.0.9 (zip) 으로 다운을 받습니다.



다운 받은 maven 압축파일을 적당한 위치에 압축을 풀고 환경변수에 설정을 합니다.
MAVEN_HOME: 압축을 푼 경로
PATH: [기존경로];%MAVEN_HOME%\bin




실제로 설정이 되었는지 확인하기 위해서 커맨드창을 하나 띄우고 아래의 명령어를 입력합니다.

mvn -version


위와 같이 Maven 정보가 나오면 올바르게 설치한 것입니다.


ㅁ 이클립스 프로젝트의 생성

임의의 폴더에 아래의 명령을 통해 maven 프로젝트를 생성합니다.

mvn archetype:create -DgroupId=kr.co.vicki.maven -DartifactId=vicki-maven


정상적으로 생성이 되면 위의 같이 BUILD SUCCESSFUL 을 보실 수 있습니다.

생성된 폴더를 탐색기로 보면 다음과 같은데, 사용할 라이브러리를 설정하기 위해서 pom.xml 를 재설정합니다.


현재 필자의 PC 에서는 기본적으로 3.8.1 버전으로 설정이 되어있어 최신버전인 4.5 로 수정하여 저장하였습니다.



이클립스 프로젝트 생성을 위해 아래와 같은 명령을 기존의 커맨드창을 통해 실행합니다.

cd vicki-maven
mvn eclipse:eclipse


기존 메이븐 리파지토리에 없는 라이브러리를 다운받고 정상적으로 빌드가 되면 위와 같은 화면을 볼 수 있습니다.

메이븐 리파지토리의 디렉토리 구조입니다. 4.5 버전을 새로 받았습니다.




ㅁ 이클립스 설정 변경

위에서 만들었던 이클립스 프로젝트를 사용하기 위해 이클립스의 File > Import 메뉴를 선택합니다.
그런 후, Existing Projects into Workspace 를 선택합니다.



Select root directoryBrowse... 버튼을 통해 기존에 만들었던 프로젝트 경로를 선택하고
아래에 Copy projects into workspace 를 체크하고 Finish 합니다.



이렇게 기존 프로젝트를 Import 하게되면 엑박을 보실 수 있습니다.



원인은 M2_REPO 라는 Classpath Variable 이 설정되어 있지 않기 때문입니다.



Window > Preferences 메뉴를 선택하고 Java > Build Path > Classpath Variables 를 선택합니다.
New... 버튼을 통해 M2_REPO 변수를 새로 추가합니다.



정상적인 프로젝트를 확인할 수 있습니다.



원래 미리 정리하려고 하였으나 연구실 복귀로 인하여 시간적 여유가 부족하여 부득히 늦은 시간에 정리하게 되었습니다.
우리 멘티 동생들에게 도움이 되었으면 좋겠습니다.  >_<




Posted by 자수씨
, |

일단 Maven 좀 익혀보고 싶습니다. 여러 개인 프로젝트를 하다보면 여러 중복 라이브러리를 cnp 로 처리하는 경우가 잦았습니다. 일단 학교 연구실 서버에 로컬 리포지토리를 구성해서 열심히 익혀보려 합니다.

두번째로는 Adobe AIR 로 개발을 해보고 싶습니다. 현재 팀내에서 GWT 와 Flex 로 파트가 나누어져서 개발 중인데 옆에서 개발하는 것을 보니 한 번 해보고 싶네요.

세번째는 아이팟 어플리케이션을 개발해 보고 싶네요~ 개발하면서 가장 마음이 잘 맞았던 꼬치몽이 현재 아이팟 어플 개발하고 있는데 저도 한번 도전해보고 싶습니다. 그럴러면 해킨을 깔던지 맥북을 사야하는... 그리고 아이팟을 사기위한 꼼수는 절대 아닙니다. 아마도......

3년 반의 회사생활을 마치고 학교로 돌아가는 느낌~ 아 너무 기대됩니다. (찌질한 복학생 ㅋㅋㅋㅋ)



Posted by 자수씨
, |

글 보관함

최근에 받은 트랙백