使用 apache iotdb 数据库时 iotdb-session 和 hive-jdbc 之间的冲突

Confliction between iotdb-session and hive-jdbc when using apache iotdb database

各位专家, 我们在 porn.xml.

中有一个具有以下依赖项的 Maven 项目
<dependency>
    <groupId>org.apache.iotdb</groupId>
    <artifactId>iotdb-session</artifactId>
    <version>0.12.1</version>
</dependency>
<dependency>
    <groupId>org.apache.hive</groupId>
    <artifactId>hive-jdbc</artifactId>
    <version>1.1.0</version>
</dependency>
<dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-common</artifactId>
    <version>2.7.3</version>
</dependency>

仅添加“iotdb-session”的依赖。该代码运行良好,我可以从 iotdb 查询数据。

<dependency>
    <groupId>org.apache.iotdb</groupId>
    <artifactId>iotdb-session</artifactId>
    <version>0.12.1</version>
</dependency>

但是,当我添加以下依赖项时出现异常。

<dependency>
     <groupId>org.apache.hive</groupId>
     <artifactId>hive-jdbc</artifactId>
     <version>1.1.0</version>
</dependency>
<dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-common</artifactId>
    <version>2.7.3</version>
</dependency>

enter image description here

这是由于 iotdb-session 和 hive 之间的 thrift 依赖冲突。 尝试使用 mvn dependency:tree 查看哪个依赖与 iotdb-session 冲突。 然后,使用移除依赖

<dependency>
        <groupId>org.apache.hive</groupId>
        <artifactId>hive-jdbc</artifactId>
        <version>1.1.0</version>
        <exclusions>
            <exclusion>
                <groupId>org.apache.thrift</groupId>
                <artifactId>libthrift</artifactId>
            </exclusion>
        </exclusions>
    </dependency>