2012-09-22 1 views
1

다음 주 UCSD에서 Java 프로그래밍 클래스를 시작하고 주말에 준비하려고합니다. objectdraw.jar라는 라이브러리가 있습니다.이 라이브러리는 우리의 수업 프로젝트에 사용할 책과 함께 제공됩니다. 현재 대부분의 과제가 단순하고 Vim을 배우고 습득하려고하기 때문에 현재 자바 프로젝트에 Vim을 사용하고 있습니다. 이제 질문에클래스 할당에 필요한 Java 라이브러리를 어디에 둘 것인지 알 수 없음

: C에서

는 ++ 나는 지역 헤더 파일을 포함하는 ""따옴표 기본 폴더의 #include 헤더를 포함 꺾쇠 괄호 <>와 사용법 #include 사용할 수 있어요. 그것은 내가 인터넷 검색에서 발견 한 것으로서 당신이 자바로 그렇게 할 수없는 것으로 보인다.

내가 처음 할당 내 된 .java 파일과 같은 폴더에 objectdraw.jar 파일을 퍼팅 시도하지만 다음 코드를 사용하여 라이브러리를 찾을 수없는

: 나는 온라인으로 검색 할 때

import java.awt.*; 
import objectdraw.*; 

을 , Gentoo HOWTO는 CLASSPATH를 설정하는 것을 언급했지만, 그 지시 사항들은 더 이상 사용되지 않는 것으로 간주되어야한다고 언급하지만, 더 이상의 지시 사항을 제공하지는 않습니다.

http://eventfuljava.cs.williams.edu/library.html 라이브러리를 다운로드 한 웹 사이트는 Vim에 대한 지침을 제공하지 않지만 Eclipse 및 Netbeans과 같은 다른 IDE에 대해서는 제공합니다.

누군가 내 프로젝트에서 찾을 수있는 .jar 파일을 어디에 둘 것인지 알려줄 수 있습니까? 아니면 누군가가 대답을 찾을 수있는 리소스를 가르쳐 줄 수 있습니까? 온라인 검색시 잘못된 질문을하는 것 같습니다.

감사합니다.

답변

2

java sdk 도구 (java, javac)에 명령 줄 옵션을 사용하여 클래스 경로를 설정하는 방법은 here을 참조하십시오. 이 페이지는 환경 변수 CLASSPATH를 설정하는 방법과 스위치 -classpath를 사용하는 방법을 보여줍니다. 귀하의 경우에는

당신이 당신의 소스 파일과 같은 디렉토리에 objectdraw.jar이있는 경우에, 당신은 컴파일이 같은 명령이 필요합니다 -

javac -classpath . MyClass.java 

을하고이 실행

java -classpath . MyClass 

클래스 경로에서 jar 파일의 전체 경로를 제공하고 여러 디렉토리와 jar를 추가 할 수도 있습니다. 예 : * nix 환경에 대한 경로 및 구분 기호는 -classpath .:/path/to/my.jar:/some/other/directory입니다. Windows에서 그것은 될 것입니다; \

편집 : 공백이있는 경로를 인용하려면 아래 설명에 유의하십시오.

+2

경로에 공백이 포함 된 경우 전체 매개 변수를 큰 따옴표로 묶어야합니다. 따라서 클래스 경로에 여러 개의 jar가 있어야하는 경우 : -classpath ".; c : \ 다른 경로 \를 a.jar; c : \ 큰 경로 \ a.jar"MyClass.java –

+0

이제 한 가지 추가 질문을하십시오. 프로그램이 오류없이 컴파일되었지만 "java -cp ../java_libraries/objectdraw.jar TouchyWindow"를 사용하여 실행하려고하면 오류 메시지가 나타납니다 : "스레드"main "예외"java.lang.NoClassDefFoundError : TouchyWidndow/클래스 ". 컴파일 된 TouchyWindow.class 파일이있는 폴더에서 해당 명령을 실행하고 있습니다. 어떤 아이디어? –

+0

클래스 경로에 현재 디렉토리를 추가해야합니다. 그러므로'-cp : : ../ javalibs/objectdraw.jar ... '를 추가하십시오. 커맨드를 실행중인 현재 디렉토리에서 TouchyWindow 클래스를 찾지 못한다. – arunkumar

관련 문제