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

Causato da:java.lang.NoSuchMethodError:org.postgresql.core.BaseConnection.getEncoding()Lorg/postgresql/core/Encoding;

Non hai spiegato completamente il contesto in cui stai ricevendo l'eccezione, ma farò alcune ipotesi.

L'errore si verifica quando si utilizza un driver postgres 8, contro un postgres 9 DB. Un caso comune è che viene inserito come dipendenza transitiva tramite qualsiasi sistema di build in uso. Per fare ancora più ipotesi, il caso molto comune è che un driver più vecchio viene incluso quando si aggiunge postgis dep, ad es. tramite Maven. La soluzione è escludere il dep, ad es. come

<dependency>
   <groupId>org.postgis</groupId>
   <artifactId>postgis-jdbc</artifactId>
   <version>1.3.3</version>
   <scope>compile</scope>
   <exclusions>
      <exclusion>
         <groupId>org.postgis</groupId>
         <artifactId>postgis-stubs</artifactId>
      </exclusion>
   </exclusions>
</dependency>

in ogni caso, potrebbe essere una dipendenza diversa o un sistema di build diverso, ma l'essenza della risposta dovrebbe applicarsi, scoprire cosa porta la sezione errata nel tuo percorso di classe ed escluderla