[ 
https://issues.apache.org/jira/browse/AVRO-647?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12904866#action_12904866
 ] 

Scott Carey commented on AVRO-647:
----------------------------------

Thoughts?

I know how to do the above with Maven directly, but I'm not as familiar with 
Ivy.  Would we need one ivy.xml files per jar/pom combination we want to build? 
 For some things this clearly breaks up by package:

o.a.a.mapred
o.a.a.mapred.tether 
o.a.a.pig
 >>> avro-hadoop.jar

But some things such as the dev tools would be more difficult.  I'm not sure we 
would choose to separate those from core.   We could instead specify the dev 
dependencies such as javacc as 'optional' in the pom / 'transisive=false' in 
ivy.

Two things jump out as definitely important to separate:
1. Hadoop, etc.
2. A future maven plugin for idl/specific compilers.

Before I add a pig dependency I'd like to sort out our packaging and dependency 
strategy here.


> Break avro.jar into avro.jar, avro-dev.jar and avro-hadoop.jar
> --------------------------------------------------------------
>
>                 Key: AVRO-647
>                 URL: https://issues.apache.org/jira/browse/AVRO-647
>             Project: Avro
>          Issue Type: Improvement
>          Components: java
>            Reporter: Scott Carey
>            Assignee: Scott Carey
>
> Our dependencies are starting to get a little complicated on the Java side.
> I propose we build two (possibly more) jars related to our major dependencies 
> and functions.
> 1. avro.jar  (or perhaps avro-core.jar)
> This contains all of the core avro functionality for _using_ avro as a 
> library.  This excludes the specific compiler, avro idl, and other build-time 
> or development tools, as well as avro packages for third party integration 
> such as hadoop.  This jar should then have a minimal set of dependencies 
> (jackson, jetty, SLF4J ?).
> 2. avro-dev.jar
> This would contain compilers, idl, development tools, etc.  Most applications 
> will not need this, but build systems and developers will.
> 3. avro-hadoop.jar
> This would contain the hadoop API and possibly pig/hive/whatever related to 
> that.  This makes it easier for pig/hive/hadoop to consume avro-core without 
> circular dependencies. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to