drill-jdbc vs dril-jdbc-all jar

2019-08-15 04:36发布

问题:

There are two JDBC drivers for apache-drill: drill-jdbc & drill-jdbc-all

Maven dependencies:

<dependency>
    <groupId>org.apache.drill.exec</groupId>
    <artifactId>drill-jdbc</artifactId>
    <version>1.4.0</version>
</dependency>

and

<dependency>
    <groupId>org.apache.drill.exec</groupId>
    <artifactId>drill-jdbc-all</artifactId>
    <version>1.4.0</version>
</dependency>

I am using drill-jdbc and things are working fine.

But according to drill's documentation for JDBC, driver is located at:

 <drill_installation_directory>/jars/jdbc-driver/drill-jdbc-all-<version>.jar

Means drill-jdbc-all should be used.

I got confused between these jars. What is the difference in these two jars?

回答1:

There differences between drill-jdbc & drill-jdbc-all is that the drill-jdbc doesn't package dependencies. There are no differences between package dependencies. The drill-jdbc-all-.jar packages all the dependencies, and if you have a conflicting jar on your path, it can cause a problem.