2013-07-17 2 views
1

내가 오라클 11.2 설치를 oracle.jdbc.driver.OracleDriver로드 및 Java 할 수 없습니다 명령 줄에서찾거나

java version "1.7.0_09" 
Java(TM) SE Runtime Environment (build 1.7.0_09-b05) 
Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode) 

, 내가하려고하면 :

java oracle.jdbc.driver.OracleDriver 

자바는 말한다 : impossibile 내가 ojdbc5.jar, ojdbc6.jarojdbc6_g.jar

,691,363을 복사 한

oracle.jdbc.driver.OracleDriver를로드하거나 찾을 수
C:\Program Files\Java\jdk1.7.0_09\lib

-oraclexe\app\oracle\product\11.2.0\server\jdbc\lib에서

(210) 내가 echo %CLASSPATH%을 실행하면 내가 얻을 :

C:\Program Files\Java\jdk1.7.0_09\lib (ie where I have copied the jar files) 

모든 이유를 왜 자바 oracle.jdbc.driver.OracleDriver를 찾을 수 있습니까?

답변

5

클래스 경로에서 폴더를 참조하고 클래스 패스에 모든 jar를로드 할 것으로 기대합니다. 클래스 패스가 작동하는 방식이 아니므로 특정 jar를 참조해야합니다 (일반적으로 NOT JDK 폴더 내에 타사 jar를 넣어야합니다).

가장 기본적인 사용 사례를 제외하고는 CLASSPATH이 일반적으로 Java 응용 프로그램에서 무시된다는 사실을 아는 것도 중요합니다.

당신은 당신이 수행하여 달성하려고 무엇을 할 수 : OracleDriverpublic static void main(String[] args) 방법이 없습니다 및 그은 다음과 같이 실행할 수 없기 때문에

java -cp <path-to>\ojdbc7.jar oracle.jdbc.OracleDriver 

이 BTW 실패합니다. JDBC 드라이버를 사용하는 일반적인 방법은 응용 프로그램 클래스 경로에 드라이버를두고 올바른 드라이버 URL을 지정하는 것입니다. JDBC 4.0 (Java 6) 이상의 호환 드라이버는 클래스 경로에서 자동으로로드됩니다 (-cp, Class-Path 매니페스트 항목 등으로 지정됨).관련이없는 노트에

, oracle.jdbc.driver.OracleDriver는 대신 oracle.jdbc.OracleDriver을 사용 나는 또한 같은 문제가 없었다 Difference between Oracle jdbc driver classes?

+0

그래서 ojdbc5.jar을 올바르게로드 할 수 있습니까? – dynamic

+0

Java 7에 대한 업데이트보기 'ojdbc7.jar'을 사용하는 것이 좋습니다 –

+0

JSP 페이지에서 OracleDrive가 필요하다는 문제가 있습니다 ... (Eclipse> Dynamic Web Project) – dynamic

1

클래스 경로에 디렉토리를 추가한다고해서 해당 디렉토리 내에있는 모든 jar 파일이 클래스 경로에 놓이는 것은 아닙니다. Oracle jar 파일을 Java 설치 디렉토리에 복사 한 이유가 확실하지 않습니다. 이 아니라을 사용하는 것이 좋겠지 만 위치를 명시 적으로 나열해야합니다. 당신이 당신의 응용 프로그램에 lib 상대적인 디렉토리로 복사 한 경우 예를 들어, 사용할 수 있습니다

java -cp lib\ojdbc7.jar;. your.class.Name 

당신 사용 *-cp 명령 행 인수에, 예를 들어, 모든 jar 파일을 찾을 수

java -cp lib\*;. your.class.Name 

또는 는 "확장"디렉토리에 복사 할 수 -하지만 난 그것을 명시 적으로 명확하게 생각합니다.

+1

'-cp lib 디렉토리에 "클래스 경로를 추가" \ oracle.jdbc.driver.OracleDriver'가 작동하지 않습니다 (항아리가 아닙니다). –

+0

@MarkRotteveel : 오케이 - 문제 없습니다. 지금 수정 됨 :) –

0

참조되지 않으며이 나는 경우 ojdbc5.jar 추출 을 무슨 짓을하고 난 추출 ojdbc5에서 오라클 폴더를 복사 한 것으로 간주 .jar 그리고 jdbc 프로그램을 작성한 현재 위치에 붙여 넣었다 (프로그래머와 프로그래머가 다르기 때문에 디렉토리를 언급하지 않음). 그런 다음 import oracle.jdbc. *; oracle.jdbc에 OracleDriver가있다. 프로그램의 나머지는 "구조"의 ojdbc6.jar 파일을 추가 할 필요가 IDEA에서, <jdk-home>/jre/lib/ext/ojdbc6.jar을 복사하기 전에

0

동일합니다 -> "SDK"->이 <jdk-home>/jre/lib/ext/ojdbc6.jar

관련 문제