drill-dev mailing list archives

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

             Summary: 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