Se você não usar
Class.forName(...) para carregar o driver manualmente, acho que você enfrentou um problema infame com o maven-assembly-plugin - sobrescreve arquivos com o mesmo nome quando eles vêm de diferentes jar s. No seu caso, o mecanismo de descoberta de driver JDBC depende de um arquivo chamado
/META-INF/services/java.sql.Driver , e você tem pelo menos dois jar s contendo tal arquivo em suas dependências (drivers Oracle e Postgres), portanto, um deles é perdido após executar o maven-assembly-plugin . Você pode usar
maven-shade-plugin em vez de maven-assembly-plugin para mesclar esses arquivos corretamente, conforme descrito aqui. Alternativamente, você pode usar
Class.forName(...) para contornar o mecanismo de autodescoberta com falha.