PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Không tìm thấy trình điều khiển phù hợp khi bao gồm các trình điều khiển cần thiết với maven-assembly-plugin

Nếu bạn không sử dụng Class.forName(...) để tải trình điều khiển theo cách thủ công, thì tôi nghĩ rằng bạn đã gặp phải sự cố khét tiếng với maven-assembly-plugin - nó ghi đè các tệp có cùng tên khi chúng đến từ các jar khác nhau s.

Trong trường hợp của bạn, cơ chế khám phá trình điều khiển JDBC dựa vào tệp có tên /META-INF/services/java.sql.Driver và bạn có ít nhất hai jar s chứa tệp như vậy trong phần phụ thuộc của bạn (trình điều khiển Oracle và Postgres), do đó một trong số chúng bị mất sau khi chạy maven-assembly-plugin .

Bạn có thể sử dụng maven-shade-plugin thay vì maven-assembly-plugin để hợp nhất các tệp này một cách chính xác, như được mô tả ở đây.

Ngoài ra, bạn có thể sử dụng Class.forName(...) để vượt qua cơ chế tự động phát hiện không thành công.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Các tính năng tương thích Oracle mới trong PostgresPlus Advanced Server 9.3Beta

  2. Python / postgres / psycopg2:nhận ID của hàng vừa được chèn

  3. Làm thế nào để truy vấn giá trị null trong trường json loại postgresql?

  4. Liệt kê các cột có chỉ mục trong PostgreSQL

  5. Tổng quan về các tiện ích mở rộng đáng tin cậy trong PostgreSQL 13