메일 테스트를 위해서 자바 단순 어플리케이션을 만들었고 잘 되는지 콘솔에서 실행해 보려고 했다.
어 어떻게 하더라..
맨날 이클립스에서만 하다 보니 콘솔에서 하는 방법을 맨날 까먹는다.
다시 정리해본다.
일단 소스는 test.SendMailTest 처럼 test 패키지를 만들었다.
그냥 이렇게 하면 안되는데 다짜고짜 실행해본다.
일단 경로로 간다.
D:\workspace\test\bin> java mail.SendMailTest
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.NoClassDefFoundError: javax/mail/Address
에러메시지를 보니 javax/mail/Address 뭔가 자바 메일 api가 클래스패스로 안잡힌듯 하다.
그래서 잡아준다.
D:\workspace\test\bin> java -cp D:\workspace\src\main\webapp\WEB-INF\lib\java-mail-1.4.jar mail.SendMailTest
오류: 기본 클래스 mail.SendMailTest을(를) 찾거나 로드할 수 없습니다.
에러메시지가 달라졌다!!
일단 자바 메일 api는 클래스 패스로 잘 잡힌것 같고.. 아! 본인 클래스를 못찾고 있네!!!
그럼 머 본인 클래스를 클래스패스로 잡아주지 머
.
쩜 하나만 찍어주면 된다.
그럼 이제 다시 해보면
D:\workspace\test\bin> java -cp D:\workspace\src\main\webapp\WEB-INF\lib\java-mail-1.4.jar;. mail.SendMailTest
success
성공이닷!
콘솔에서 자바 패키지 컴파일은
D:\workspace\test\src> javac -cp D:\workspace\src\main\webapp\WEB-INF\lib\java-mail-1.4.jar -d . mail.SendMailTest
-d . 를 하여 현재 경로에서 즉, 현재 경로가 루트가 되게 패키지 컴파일을 하라는 뜻이다.
다음글은 리눅스에 자바 컴파일 실행 삽질을 소개해보겠다.