Presto jdbc 查询 json 解析异常

936 阅读1分钟

异常:

......
Unable to create class com.facebook.presto.jdbc.internal.client.QueryResults from JSON response:
......
Cannot construct instance of `com.facebook.presto.jdbc.internal.common.type.TypeSignature` (although at least one Creator exists): cannot deserialize from Object value (no delegate- or property-based Creator)
......

主要原因是,引用的presto-jdbc包不对, 官网教程:prestodb.io/docs/curren… 如下:

<dependency>
    <groupId>com.facebook.presto</groupId>
    <artifactId>presto-jdbc</artifactId>
    <version>0.238.2</version>
</dependency>

换成io.prestosql这个包,如下:

 <dependency>
      <groupId>io.prestosql</groupId>
      <artifactId>presto-jdbc</artifactId>
      <version>339</version>
  </dependency>

jdbc报错解决。 推测可能是facebook将presto贡献给了apache基金会后,贡献者修复了这个bug,而原生的没有。