PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Nessun driver adatto trovato quando si includono i driver necessari con il plug-in di assemblaggio maven

Se non usi Class.forName(...) per caricare il driver manualmente, penso che tu abbia riscontrato un famigerato problema con maven-assembly-plugin - sovrascrive i file con lo stesso nome quando provengono da jar diversi s.

Nel tuo caso il meccanismo di rilevamento del driver JDBC si basa su un file denominato /META-INF/services/java.sql.Driver e hai almeno due jar s contenenti un tale file nelle tue dipendenze (driver Oracle e Postgres), quindi uno di essi viene perso dopo aver eseguito maven-assembly-plugin .

Puoi usare maven-shade-plugin invece di maven-assembly-plugin per unire correttamente questi file, come descritto qui.

In alternativa, puoi utilizzare Class.forName(...) per eludere il meccanismo di rilevamento automatico fallito.