OSGi 번들 내에서 Derby Client를 실행하려고합니다. 번들은 Maven에 의해 빌드되므로 org.apache.derby:derbyclient
에 종속성을 추가했습니다. 런타임에 다음 예외가 발생합니다 : java.sql.SQLException: No suitable driver found for jdbc:derby://localhost:1527/testdb
.Felix에서 Derby Client를 사용하는 방법?
에 임베디드 드라이버 및 종속성을 사용하면 흥미로운 점이 있습니다. 나는 그 둘의 차이를 보지 못했다.
내가 뭘 잘못하고 어떻게 해결할 수 있습니까?
일부 가벼운 음식 : DynamicImport-Package: *
:
- 몇 가지 조언 후 나는 다음과 같은 OSGi 프레임 헤더를 설정 인터넷에서 찾을. 임베디드 드라이버의 고정 된 문제이지만 클라이언트는 여전히 실패합니다.
- 내가 사용하는 Derby 버전은 10.7.1.1이며 OSGi가 활성화되어 있어야합니다 (적어도 OSGi 헤더가 있음).
EmbeddDriver와 ClientDriver의 차이점은 임베디드 드라이버가 JDK에 의해 자동으로로드된다는 것일 수 있습니다. 클라이언트 드라이버의 경우 Class.forName을 명시 적으로 호출해야합니다. 어쨌든, 당신이 일하게되어 기뻐요! –
@Bryan : 문제는 클래스 로더가 없으면 클라이언트 드라이버에서'Class.forName()'도 실패합니다. 나는 왜 때때로 그것이 때때로 필요하지 않은지 잘 모르겠습니다. – musiKk