drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Joseph Barefoot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DRILL-3589) JDBC driver maven artifact includes a lot of unnecessary dependencies
Date Fri, 31 Jul 2015 20:11:06 GMT

    [ https://issues.apache.org/jira/browse/DRILL-3589?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14649758#comment-14649758
] 

Joseph Barefoot commented on DRILL-3589:
----------------------------------------

Hmm ok yeah I thought the jdbc-all artifact was a combined jar that included all of the minimal
dependencies in a single jar.  That's definitely nice for client/reporting tools, but in our
case we need to be able to exclude some shared dependencies (i.e. ones our project already
uses transitively via another lib, perhaps a more recent version) as well.  Those exclusions
are in addition to the ones I mentioned above in the drill-jdbc artifact that are simply unused.

Again we already have this working so not high priority, this was filed just to help out future
devs integrating Drill into their apps.  Really appreciate the rapid response though!

> JDBC driver maven artifact includes a lot of unnecessary dependencies
> ---------------------------------------------------------------------
>
>                 Key: DRILL-3589
>                 URL: https://issues.apache.org/jira/browse/DRILL-3589
>             Project: Apache Drill
>          Issue Type: Improvement
>          Components: Client - JDBC
>            Reporter: Joseph Barefoot
>            Assignee: Daniel Barclay (Drill)
>            Priority: Minor
>
> The Drill JDBC POM file pulls in so many unused transitive dependencies that it takes
quite a while to exclude all the unnecessary ones when using it from within a Java project.
 This is similar to DRILL-3581 in that you can work around it via exclusions of transitive
dependencies, but since it makes interoperability with other open-source projects problematic,
this will keep coming up for anyone using the JDBC driver from within any serious java app.
> Considering the pom:
> http://repo1.maven.org/maven2/org/apache/drill/exec/drill-jdbc/1.1.0/drill-jdbc-1.1.0.pom
> ...it seems that most of the unused dependencies are transitive from drill-common and
perhaps also drill-java-exec.  Here's an example of some dependencies that the JDBC driver
shouldn't need (and we excluded in our project):
> parquet-*
> jetty-server
> javassist
> commons-daemon
> hibernate-validator
> xalan
> xercesImpl
> For the record we are now able to use the JDBC driver fine from within our project, but
it did take some dependency tree analysis (and a little trial-and-error) to figure out what
to exclude.  We would like to save future developers that time.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message