Yep I'd ditch ivy and the lib folder for maven-ant-tasks...

After battling with ivy for ages I have come to the conclusion that it's
trying to be too smart... [when trying to generate pom files] but you should
not confuse how you have done things...

the runtime dependencies of cassandra are all in lib... not pulled from
ivy... it would be easy to grab the effective classpath from the pom task
and thereby remove the need for the lib folder... could probably knock
something up to pull down the licenses referenced from the poms of the
specific versions specified in that pom task

something like (note this is untested)

<target name="make-lib" depends="pom">

 <artifact:dependencies filesetId="dependency.fileset" pomRefId="all-pom" />

<copy todir="${basedir}/lib">
  <fileset refid="dependency.fileset" />
  <!-- This mapper strips off all leading directory information -->
  <mapper type="flatten" />
</copy>

</target>


in the interim while we have the lib/pom duality I have gone and found all
the dependencies and verified that the versions I have specified are
equivalent at the bytecode level to the ones I have specified... as long as
you have the actual dependencies in SVN there will be issues!

Note that the reason the dependencies are in SVN is so that you can be sure
of the license information...

Now I would like to update some of the deps in lib to the same version of
the jars that I am referencing... but I can appreciate that the 0.7.0
release is a higher priority... so I am fine being pragmatic and doing the
verification _by hand_ at this point in time... but I hope that in the
future we can move to

On 3 January 2011 14:00, Gary Dusbabek <gdusba...@gmail.com> wrote:

> Stephen,
>
> Please lay down some mvn/ant wisdom on us...  Is there a way to
> link/include the dependency logic from the 'pom' target and the
> ivy.xml file we use?  It would be great if the dependency information
> could be consolidated in one place.
>
> Great work, btw.
>
> Gary.
>
> On Sun, Jan 2, 2011 at 14:50, Stephen Connolly
> <stephen.alan.conno...@gmail.com> wrote:
> > As I am not a cassandra committer I'd rather do the promotion with a
> vote.
> > There are two staging repositories:
> >
> https://repository.apache.org/content/repositories/orgapachecassandra-065/
> > Which contains the dependencies which are not available in the maven
> central
> > repository (libthrift and avro... actually these are slightly tweaked as
> > jars with both .java and .class files can cause problems for people when
> > compiling code, so I have stripped out the .java files and rebuilt)
> > The second staging repository is:
> >
> https://repository.apache.org/content/repositories/orgapachecassandra-064/
> > This contains the actual cassandra jars.
> > I have given these the GAV of
> org.apache.cassandra:cassandra-all:0.7.0-rc4
> > for two reasons:
> > 1. There will be eventually cassandra-thrift-server, cassandra-core,
> > cassandra-thrift-client, etc [not committing to how they will be split
> out,
> > but the point is that they will be split out] so a -all.jar makes most
> > naming sense in this case
> > 2. Also don't want to conflict with the riptano GAV coordinates as there
> is
> > a 0.7.0-rc4 already.
> > Attached is the patch I am using to publish the cassandra jars:
> > Vote will be open for 72 hours and will proceed by lazy consensus.
> > -Stephen
>

Reply via email to