1. Classpath환경변수 이용하기 1-1. 아래구조와 같이 폴더를 만든다. 1-2. C:\project1\src 폴더에 A.java, B.java, Main.java파일을 둔다. ** A.java package com.seoulit1; public class A{ public String me(){ return "A클래스"; } } ** B.java package com.seoulit2; public class B{ public String me(){ return "B클래스"; } } ** Main.java import com.seoulit1.A; import com.seoulit2.B; class Test public static void main(String args[]){ System.out.println(new A().me()); System.out.println(new B().me()); } } 1-3 ‘–d’ 옵션 이용해서 자동으로 패키지 만들고 컴파일하기 A클래스, B클래스는 둘다 잘 컴파일이 된다. 그러나 Main클래스 같은 경우 패키지com이 src폴더에 없기 때문에 컴파일이 되지 않는다. 그럼 어떤 해결방법이 있을까? 답은 com패키지를 Main.java와 같은 방에 갖다두면 잘 컴파일된다. 위방법은 com패키지를 옮겨야하기 때문에 번거로울 수 있다. 패키지를 옮기지 않고도 Main클래스를 컴파일 할 수 있는 방법이 있다. 바로 classpath환경변수를 셋팅하면 된다. 1-4. classpath환경변수 셋팅하기 첫번째방법( 현재 cmd에서만 유효한 환경변수 값 ) set classpath = com패키지가 있는 곳의 절대경로 위 실행결과를 잘 살펴보자. javac Main.java라고 했을 때 분명 패키지가 존재하지 않는다는 에러가 났다. 그래서 set classpath를 이용해서 환경변수 셋팅을 하고 난뒤 다시 컴파일을 시도한다. 시도한 결과 잘 컴파일됨을 알 수 있다. 그러나 실행할 때 NoClassDefFoundError가 발생한다. 이번에는 현재폴더에 있는 Main을 찾을 수 없는 에러가 발생했다. 이유는 뭘까? Jdk를 처음 다운받아 설치하면 내부적으로 환경변수는 아래와 같이 설정되어 있다. set classpath=.; 컴퓨터세계에서 ‘.’의 의미는 현재폴더를 의미한다. 즉, 현재폴더에 있는 클래스파일을 찾는다는 얘기가 된다. 그렇다면 이제 Main을 찾지 못하는 이유를 알았을 것이다. 그래서 항상 환경변수를 셋팅할때는 습관적으로 ‘.’을 넣어주어야 한다. 바로 아래처럼.. set classpath=.; 두번째 방법( 컴파일 할 때 옵션으로 환경변수 설정 ) 컴파일할때 옵션으로 환경변수를 셋팅했으므로 실행할 때 환경변수옵션을 주지 않으면 위와같이 에러가 난다. 세번째 방법 ( 영구적으로 환경변수 설정 ) 바탕화면의 내컴퓨터아이콘선택 오른버튼 -> 속성 -> 시스템등록정보창에서 고급탭선택 -> 환경변수버튼선택 위와같이 새로운 환경변수 classpath를 만들어 값을 셋팅한다. 2. jar파일 만들어 classpath에 jar추가하기 2-1. jar파일 만들기 jar 명령어를 이용해서 test.jar를 만든 다음 com패키지를 삭제한다. 2-2. jar파일 classpath에 추가하기 3. javadoc명령어 이용해서 API만들기 3-1. HelloJavaDoc.java만들기 /** * <i>javadoc 예제</i> * 이 프로그램은 javadoc 유틸리티를 이용해서 * API 문서를 만들기 위한 예제 프로그램이다. * * @version 1.6.0 * @author EunJeong Kim */ public class HelloJavaDoc{ /** 상수1 주석 */ public final static int MY_CONSTANT=1; /** 생성자 주석 */ public HelloJavaDoc(){ /** 생성자에 대한 설명 */ } /** * 무언가 하는 메서드 * @param i 첫번째 인자 * @param j 두번째 인자 * @return 돌려주는 값 * @see #doNothing */ public int doJob(int i, int j){ /** doJob메서드에 대한 설명 */ } /** 아무것도 안하는 메서드 * @see HelloJavaDoc#doJob * @since HelloJavaDoc 1.0 */ public String doNothing(){ /** doNothing메서드에 대한 설명 */ return "aaa"; } } 3-2. javadoc명령어 사용하기 javadoc -d c:\doc -link http://java.sun.com/j2se/1.5.0/docs/api/ HelloJavaDoc.java [출처] jar classpath설정,javadoc를 이용한 api만들기|작성자 엄친아 |
oracle 시스템 쿼리 (0) | 2009.06.03 |
---|---|
vi (0) | 2009.05.04 |
프로젝트의 문서 템플릿 관리하기 (0) | 2009.01.24 |
프로젝트 요건 문서(PRD) (0) | 2009.01.24 |
왕따 된 한국 IT..누가 이지경으로 만들었나.. (59) | 2008.11.10 |