sql >> Databasteknik >  >> RDS >> PostgreSQL

Ingen lämplig drivrutin hittades när de inkluderade de nödvändiga drivrutinerna med maven-assembly-plugin

Om du inte använder Class.forName(...) för att ladda drivrutinen manuellt, då tror jag att du stod inför ett ökänt problem med maven-assembly-plugin - det skriver över filer med samma namn när de kommer från olika jar s.

I ditt fall bygger JDBC-drivrutinsupptäcktsmekanismen på en fil med namnet /META-INF/services/java.sql.Driver , och du har minst två jar innehåller en sådan fil i dina beroenden (Oracle- och Postgres-drivrutiner), därför går en av dem förlorad efter att ha kört maven-assembly-plugin .

Du kan använda maven-shade-plugin istället för maven-assembly-plugin för att slå samman dessa filer på rätt sätt, som beskrivs här.

Alternativt kan du använda Class.forName(...) för att kringgå den misslyckade mekanismen för automatisk upptäckt.




  1. Distribuera en Hybrid Cloud MySQL-databas med ClusterControl

  2. Hur man ställer in Spotlight Cloud och felsöker SQL Server effektivt

  3. Hämtar en rad, en kolumn med PDO

  4. Microsoft Access DevCon i Wien Österrike 1–2 april 2017