eclipse 테스트코드 작성할 때 편한 설정
이클립스를 새로 설치하거나 하면, 꼭 한번씩은 하는 설정들인데.. 내가 정리하기도 귀찮고해서-ㅅ- 다른 분이 잘 정리해놓은 것 링크를 걸어둔다. http://blog.benelog.net/2688165
이클립스를 새로 설치하거나 하면, 꼭 한번씩은 하는 설정들인데.. 내가 정리하기도 귀찮고해서-ㅅ- 다른 분이 잘 정리해놓은 것 링크를 걸어둔다. http://blog.benelog.net/2688165
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
private final int maxSize = Default.MAX_SIZE.value(); private static enum Default { MAX_SIZE(10000000), CODE(0), CHANGE_TYPE("T"), IS_DEFAULT(true), FLAGS(0); private Object value; private Default(Object value) { this.value = value; } @SuppressWarnings("unchecked") public <T> T value() { return (T)value; } } |
모델객체 내부에서 기본값을 지정해야 되는 경우에 위처럼 내부 enum 객체를 생성해서 사용했다. 물론 객체가 갖는 값은 여러 가지 타입이 있으니 Object로 선언하고 제너릭을 사용하여 리턴타입에 맞춰서 변경하도록 했다. 그런데, 이클립스에서 컴파일 시에 오류가 나지 않던 것이 실제 컴파일을 돌리면… 더 보기 »primitive type에서 generic사용 시 오류 발생
다른 분이 공유해주셔서 알게 됐는데, infinitest라는 이클립스 플러그인이 있다. 코드가 바뀔 때마다 백그라운드에서 관련 테스트를 계속 돌려서 자동으로 결과를 알려준다. JunitMax라는 것도 있는데 이건 1년에 100달러 씩 유료로 사용하는데… infinitest는 GNU License로 변경되어 개인/기업 무료로 사용이 가능하다. 이클립스에서 help >… 더 보기 »[eclipse plugin] infinitest
1 2 3 |
/home/freeism/.hudson/jobs/UI-TEST/workspace/ui-test/src/test/java/com/freeism/DataTransferObject.java:[13,11] generics are not supported in -source 1.3 (use -source 5 or higher to enable generics) public Map<String, String> getParameters(); |
로컬에서는 되는데 (이클립스가 버전 정보를 명시해주니까…) 리모트(CI서버)에서는 오류가 발생한다. 위와 같이 오류가 발생하는 이유는 maven에서 사용하는 JDK 버전이 명시되어 있지 않기 때문이다. 당연히 아래와 같이 maven plugin 설정을 추가해주면 해결된다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.6</source> <target>1.6</target> <encoding>UTF-8</encoding> <optimize>true</optimize> </configuration> </plugin> </plugins> </pluginManagement> </build> |
출처 : http://forum.springsource.org/showthread.php?t=24913
매번 남이 만들어 놓은 코드 수정만 하다보니, 처음 이클립스에서 프로젝트를 생성하려면 막막한 경우가 많다. workspace에서…
1 |
mvn archetype:create -DgroupId=kr.co.freeism.app -DartifactId=sample-app -DarchetypeArtifactId=maven-archetype-webapp |
위와 같이 입력하면, maven 프로젝트가 생성되고.. 기본 pom.xml 파일이 생성된다.
1 |
mvn eclipse:clean eclipse:eclipse |
이렇게 해주면, 이클립스에서 작업하기 좋도록 프로젝트 정보를 수정해준다. 이제, 내가 평소에 자주 보던… 더 보기 »maven project 생성
eclipse에서 subclipse 설치했는데, “Unable to load default SVN Client” 라는 오류가 발생했다. 정상적으로 subclipse를 설치했는데 이건 또 무슨 말이냐. http://eclipse.svnkit.com/1.3.x/ 저걸 설치해주면 괜찮아진다고 한다. 자세한 설명은 생략한다. 출처 : http://entireboy.egloos.com/4201369 수정 : 다시 보니, subclipse 1.6.x 버전에서 해당 adaptor를 필수… 더 보기 »eclipse에서 subclipse 설치 시 오류발생
새로 참여한 프로젝트에서 jsp 대신 freemarker를 사용하게 되었다. eclipse 에서 jsp는 기본적으로 syntax highlighting을 해주는데, freemarker는 까만 글씨로만 나와서 답답하다. (기본이 아닐지도 모르겠다, jsp만 써왔으니 젤 첨에 설치해놓고 까먹었을지도…) http://freemarker.org/eclipse/update/ 요 사이트 주소는 먹통이고, http://sourceforge.net/projects/freemarker/files/ 이쪽으로 들어가보면 플러그인은 deprecated 되었단다. 구글링으로 찾아보니,… 더 보기 »freemarker eclipse plugin
1 2 |
[ERROR][2010/03/11 18:03:05] Context initialization failed - ContextLoader::initWebApplicationContext() org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'xxDAO' defined in class path resource |
방금 전까지 잘 돌아가던 이클립스+톰캣이었는데, 아무런 이유없이 위같은 exception을 뱉어내면서 톰캣이 뜨지를 않는다. 완전 삽질하다가 결국 톰캣 옵션이 문제인 것을 알았다. 저기에서 Enable security 옵션이 체크되어 있네… -_- (원래 체크 안되어 있었다) 무슨 옵션인지 정확하게는 모르겠지만, 나도 모르는 사이에… 더 보기 »[ERROR] org.springframework.beans.factory.BeanCreationException
eclipse에서 junit 테스트를 작성하면 우측 하단에 잠깐 메시지가 나오면서 별다른 컴파일 작업없이 auto-build 되어 바로 적용된다. 그래서 우리는 ctrl + F11 이나 alt + x + t 를 하면 바로 테스트 결과를 볼 수 있다. 그런데 어느 순간부터 컴파일을 따로… 더 보기 »eclipse에서 junit 테스트가 auto-build 되지 않음
implementor : http://eclipse-tools.sourceforge.net/updates/ 인터페이스 기반으로 개발할 때 해당 인터페이스를 implement한 클래스로 연결시킴 (Alt+F3) subclipse : http://subclipse.tigris.org/update_1.6.x SVN을 사용할 수 있음 m2eclipse : http://m2eclipse.sonatype.org/update/ Maven 플러그인 code coverage : http://update.eclemma.org/ 코드커버리지 확인 pmd : http://pmd.sf.net/eclipse 정적분석툴 checkstyle : http://eclipse-cs.sf.net/update 코딩스타일 지정