본문 바로가기
Web Program/GWT

[1]mojo GWT Maven Plugin 이클립스 Project 설정하기

by 학수씨 2014. 6. 27.

GWT 의 경우에는 자체 Project 를 사용한다.


따라서 Spring 기반의 MyBatis 나 iBatis 세션 등을 사용하기 위해선 GWT를

Maven 기반 Project 로 설정해야한다..


GWT를 Maven 기반 Project로 설정하기 위해선 


GWT Maven Plugin 을 사용해야 한다.


http://mojo.codehaus.org/gwt-maven-plugin/user-guide/archetype.html

위 URL 이 공식 mojo gwt maven plugin 홈페이지 이다.



일단 나의 경우 Linux 기반이다..


Linux Maven 설치하기


리눅스에 Maven 설치방법은 위 글을 참고 하길 바란다~


OS에 Maven 이 설치되었다고 가정하고 Maven GWT Project를 만들어 보도록 하겠다.



1. GWT Maven Project Download



Download 받아질 폴더로 이동을 한 후에 명령어를 입력하면 된다. (구지 root 권한일 필요는 없음)


$ mvn archetype:generate \
   -DarchetypeGroupId=org.codehaus.mojo \
   -DarchetypeArtifactId=gwt-maven-plugin \
   -DarchetypeVersion=2.6.1


위와 같이 명령어를 입력해주면 약 1~2분동안 필요한 파일들을 Download 받다가 맨 마지막에 

GroupID, Package 등 여러가지를 물어본다..



Define value for property 'groupId': : com.musicPie

Define value for property 'artifactId': : musicPie

Define value for property 'version':  1.0-SNAPSHOT: : 

Define value for property 'package':  com.musicPie: : 

Define value for property 'module': : MusicPie


빨간색 부분이 내가 적어 넣은 내용이다..


파일브라우저로 아까 Downlaod 한 위치로 이동하면 아까 Project Name 으로 적었던 폴더가 보일것이다..

일단 여기까지 했다면 Project 생성을 완료하였다.



2. Eclipse 에서 Project Import 


프로젝트 창에서 마우스 오른쪽 버튼을 눌러 Import 를 선택한다.



Existing Projects into Workspace 를 선택한후 Next 버튼을 눌러준다.




Select root directory 에 Browse 버튼을 눌러 아까 Download 받은 Project 폴더위치를 잡아준뒤

Finish 버튼을 누른다..



설치된 Maven 버전과 Project Maven 버저이 다르면 위와같은 창이 뜰수 있다.. 걍 Yes 버튼 눌러주자.




위와같이 Import된 모습을 볼수가 있다.. 그러나.. Error 가 존재한다. 일단 Project 셋팅을 좀더 해줘야 한다.



3. Eclipse Project Setting



Import 시킨 프로젝트를 선택한후 오른쪽 버튼을 눌러 Properties 를 눌러준다 (Alt+Enter) 를 눌러도 됨..



Launch and deploy from this directory 가 체크되어있는지 확인하고 만약 체크되어있지 않다면 체크해준뒤 OK 버튼을 눌러준다.



일단 이클립스 Error 내용을 확인해보면 나의경우 총 7개의 error 가 나있다


일단 첫번쨰 Error는 GWT SDK JAR 파일이 WEB-INF/lib directory 에 없다고 한다.

그리고 Messages 쪽 기능이 정상적으로 동작되지 않는것 같다.

그리고 Plugin 중 제대로 설정되어있지 않는것 같다...


Message쪽 Error는 Version 문제로 이클립스 셋팅이 잘못되어있어서 에러나는 경우이고

Plugin 쪽 에러는 내가 Plugin 을 설치하지 않았기 때문에 Error가 나는것이다..


일단 에러 처리 부터 하고 깔끔한 상태의 Project를 만들어보자.



Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:gwt-maven-plugin:2.6.1:i18n (execution: default, phase: generate-sources) pom.xml /musicPie line 69 Maven Project Build Lifecycle Mapping Problem


일단 위 Error 를 더블클릭하여 pom.xml 파일을 열어보자.


그럼 execution 쪽에서 Error가 존재한다..

나같은 경우엔 i18n 쪽이 이클립스에 설정되어있지 않다. (설치 X)

<goal>i18n</goal> 라인 을 지우자




라인을 지우면 더이상 에러가 나지 않는다..



The method create(Class<?>) from the type GWT refers to the missing type Messages musicPie.java /musicPie/src/main/java/musicPie/client line 37 Java Problem


에러를 더블클릭 하여 musicPie.java 파일을 열어보자.




위 화면과 같이 Message 쪽이 동작이 제대로 않하고 있는것을 확인할수 있다.

Message를 사용하는 부분을 삭제 또는 수정 해서 Error 를 없애자!




위와같이 수정 하면 Error 가 않날것이다.... 

이클립스 설정이 모두 완벽하게 되어있다면 위와같은 Error는 나지 않을 것이다.


그런다음 다시 이클립스쪽 Error 를 보면 1개가 남아있을 것이다.





The GWT SDK JAR gwt-servlet.jar is missing in the WEB-INF/lib directory WEB-INF /musicPie/src/main/webapp Unknown Google Web Toolkit Problem


라는 에러인데 일단 WEB-INF 폴더에 lib 폴더를 생성해주자.




lib 폴더를 만들어준뒤 Eclipse Problem Window 에서 해당 Error 를 마우스 오른쪽 클릭한다.



그런다음 Quick Fix 메뉴를 선택한다.




그럼 위와같은 화면이 뜨는데 바로 Finish 버튼을 눌러주자!


Ctrl + B 를 눌러 Project Build 를 함 해주고 확인하면 모든 Error 가 사라졌다~




그럼 마지막으로 Project 가 제대로 동작하는 함 실행시켜보자!



4. Web Application Run


해당 프로젝트를 선택후 마우스 오른쪽 버튼을 눌러 Run AS -> Web Application 을 선택하자!




최초실행시 위와같이 WAR Directory 를 선택해달라고 한다.. target 폴더를 선택한후 확인을 눌러주자

만약 정상적으로 실행이 되지 않고 classpath 관련 오류가 나도 상관없다.


다음 글에서 어짜피 Spring 연동시 모든 소스코드를 다 지워야 하기 떄문에!










댓글