#22 Binary release has no single .jar file

Kurt Werle

It would be really nice if the binary release included a single
.jar file with all the cdk classes packaged together.


  • Egon Willighagen

    Logged In: YES

    This is not really a bug, because it was intended. But I hope to
    remember to make a binary release next time that has a one jar
    binary too.

  • Christoph Steinbeck

    Logged In: YES

    The request for a single jar file makes only sense if this
    includes all the third party jars needed to use the CDK.
    Otherwise I see not point in makeing one cdk-all-in-one.jar
    and still have ten separate third-party jars beside it.
    However, there might be license issues preventing us from
    packaging the third-party jars and the cdk jars in one big
    binary jar. Not sure. On the other hand, a jar is just a zip
    file and as long as we properly list the software and
    licenses of those that we ship, having all the binary parts
    of the CDK in one big jar might well be possible. Just
    wanted to put this up for discussion.

  • Kurt Werle

    Kurt Werle - 2003-10-21

    Logged In: YES

    Say I'm working on a project. I already use log4j, jaxp, xerces,
    and maybe junit. All I want in the cdk jar is cdk stuff. If you
    require other jars, that's fine - everyone does. As has been said,
    you're supplying a library; if it was an app, you should include
    everything needed to run.

    As it stands, if I want to use any one of your jars it seems like I
    have to use at least 3 of them. That's just a hassle, not a feature.

    [Poor] comparison in the C world: if you download a binary
    version of libz, you don't expect it to include libm. Likewise libpng
    doesn't include either libz or libm, but you'd better have them.

  • Nobody/Anonymous

    Logged In: NO

    Kurt, actally I was not meaning to criticise your your
    request by any means.
    One cdk jar is perfectly fine with me since it does not
    require more than a couple of line in our build.xml file.
    Sorry for the misleading posting.

  • Egon Willighagen

    Logged In: YES

    And the build.xml already has such a target now:
    dist-large. Added it a few days ago. I left the bug open,
    because I need to remember that I actually release the
    single jar too.

  • Egon Willighagen

    Logged In: YES

    The build.xml should have this task:
    <target id="dist-large" name="dist-large" depends="compile-all, dist.init" description="Builds on big jar file for the CDK, including experimental classes.">
    <jar jarfile="${dist}/jar/cdk-all.jar">
    <fileset dir="${build}">
    <include name="org/openscience/cdk/**"/>
    <fileset dir=".">
    <include name="CHANGELOG"/>
    <include name="README"/>
    <include name="BUGS"/>
    <fileset dir="${doc}">
    <include name="lgpl.license"/>
    <fileset dir="packages/tar/cdk">
    <include name="AUTHORS"/>

    Then it can be used to create a big cdk-all.jar with:

    ant dist-large

    The jar does not contain other required libraries.
    And therefor, I am not going to release this jar in SF,
    contradicting something I said before.


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks