RFC: Package structure of ant

Arnaud Vandyck avdyk at debian.org
Wed Sep 14 07:41:35 UTC 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Michael Koch wrote:
> On Tue, Sep 13, 2005 at 04:03:43PM -0400, Barry Hawkins wrote:
>>Jerry Haltom wrote:
>>>Almost every package I have seen uses ant as a lib.
>>>In fact, name on that doesn't?
>>>The build scripts for most packages invoke the VM and point
>>>it to the Ant library. They don't invoke the Ant binary wrapper.

You are talking about CDBS, aren't you? If ant was in main at the time
Stefan Gybas wrote the cdbs rules for ant, I don't think he would call
ant that way but he would have use the launcher script (sorry for the
english grammar, I think I messed up;-))

>>>Eclipse is the same. It has no need for the binary Ant wrapper.

Correct me if I'm wrong but I think Eclipse calls the main ant launcher
class, not the *bash* wrapper script

>>>Just pointing this out.
>>[...]
>>While I agree that technically Ant is invoked as a collection of Java
>>classes that could be considered a library in the technical sense, we
>>are always invoking the main classes that allow it to function as a
>>build tool, like make.  Users would view Ant logically in the same way
>>they view make; a build tool.  Very few users of Debian will be invoking
>>ant the way we do as package maintainers - except for the really sick
>>ones 8^).

Barry I totally agrre

> Right. Full ACK.

And I see Michael too ;-)

But this is a problem we already discussed with Stefan Gybas back in
2003 at the FOSDEM. The difference between library and applications in
Java is tiny. Batik, Xalan, Ant, Tomcat (used by Eclipse as
documentation system), FOP, and maybe others does have wrapper scripts
or could have one and it is useful. But they are also often used as a
separate application.

My point of view is they are applications AND you can use them as a
library: the name should reflect the application, not the library.

In Java (I don't know other languages and correct me if I'm wrong about
Java), every application could be a library except if this application
has been written with non accessible classes and/or method (or some
other obvious reasons). If this is right, we do have to reflect the
*lib* in the name if there is no way for a user to use the package as an
application (with a wrapper script). Maybe for some package we should
write our wrapper script.

Cheers,

- --
  .''`.
 : :' :rnaud
 `. `'
   `-
Java Trap: http://www.gnu.org/philosophy/java-trap.html
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFDJ9Qv4vzFZu62tMIRAt+uAJ4rEUG7PLNJViIgZlt/zC2BkOKMzQCglcwd
99LLxg/mkQLoOLE/5PVl6qQ=
=b6pI
-----END PGP SIGNATURE-----



More information about the pkg-java-maintainers mailing list