ANT - "Could not create type ftp due to java.lang.NoClassDefFoundError: org/apache/commons/net/ftp/FTPClientConfig" FTP 배포 실패 시

Published on: 2011. 3. 2. 18:32 by louis.dev

ANT를 처음 사용할때 다음과 같은 난관에 봉착하여 서버로 배포를 하지 못한적이 있습니다.

"Could not create type ftp due to java.lang.NoClassDefFoundError: org/apache/commons/net/ftp/FTPClientConfig"

말그대로 클래스가 정의되어있지 않다, 즉 "라이브러리가 없다" 라고 친절하게 알려주고 있습니다.

위에서 말하는 FTPClientConfig 클래스는 apache 프로젝트의 commons-net 프로젝트commons-net-2.2.jarANT Build Path에 추가해 주기만 하면 됩니다.

해당 라이브러리를 다운받으신 후 적당한 디렉토리에 압축을 풀어 놓습니다.

Window -> Preferences로 들어가신 후 좌측 메뉴의 Ant -> Runtime 을 선택하시고 Classpath탭에 Global Entries를 선택하면 우측의 Add External Jars 버튼이 활성화가 됩니다.

이 버튼을 클릭해서 압축푼 commons-net-xx.jar를 선택하고 OK를 누르면 설정이 끝납니다~




참쉽죠잉~ㅎㅎ

ANT - 컴파일시 "Error starting modern compiler" 라는 에러 발생 할 때

Published on: 2011. 3. 2. 18:18 by louis.dev

오랜만에 회사 컴퓨터를 포멧을 하고 윈도우 7으로 설치했습니다.

이것저것 세팅하고 무리없이 개발을 진행했습니다. 그리고 테스트서버에 배포하려는 순간..

~~\build.xml : "Error starting modern compiler"
라는 에러를 발생시키며 컴파일이 안되더라구요.

그래서 여기 저기 알아본 결과 원인은 포멧 하면서 새로운 JDK버전을 설치하고
JAVA_HOME 환경변수를 새로운 JDK버전으로 등록하였습니다. 이때 새로운 JAVA_HOME과 eclipse의 JAVA_HOME이 달라서 뿌리는 에러라고 합니다.

제 해결 방법은 이렇습니다.

1. 이클립스의 Run -> External Tools -> External Tools Configurations


2. 실행한 창에서 JRE 를 선택하고 Separate JRE 부분에 현재 JAVA_HOME에 등록된 JDK 버전과 같은 JRE를 선택하고 close를 누른뒤 다시 컴파일을 하면 에러가 사라진것을 확인 할 수 있습니다.


만약 위의 셀렉트 박스에서 해당 버전의 JRE가 없다면 오른쪽의 Installed JREs 버튼을 누른뒤 새로 설치한 JRE를 선택해서 추가하신 후 작업하시면 됩니다~^^