ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From thufir <hawat.thu...@gmail.com>
Subject JAR dependencies for gnumail-providers.jar
Date Sun, 22 Dec 2013 17:57:49 GMT
I don't normally delve into Ant build files, so it's a bit alien.  I 
believe this is the build file for gnumail-providers.jar?


http://svn.sv.gnu.org/viewvc/trunk/mail/build.xml?revision=1156&root=classpathx&view=markup


I'm trying to figure out:

1.)  what the dependencies are for this JAR.  That is, what JAR's do I 
need to put on the classpath?
2.)  which packages, specifically, are being compiled?

The packages seem to organized in a strange way, where gnu.mail is used 
to build gnumail.jar and gnu.mail.providers is used to build this JAR -- 
but one JAR depends upon the other?  It hurts my brain, they're in the 
same package hierarchy.  Also, this JAR, when built, also has some, or 
all of, the gnu.mail.treeutil package.

This one package, gnu.mail, seems spread across two JAR's in a way I've 
never seen before.

Here are the bits of the build file I'm looking at:

   <target name='providers.jar' depends='providers,meta-inf' 
description='Build the GNU JavaMail providers JAR file'>
     <jar basedir='${dst}' destfile='${providers.jar}' 
manifest='${manifest}'>


and

       <packageset dir='${src}'>
         <include name='javax/mail'/>
         <include name='javax/mail/event'/>
         <include name='javax/mail/internet'/>
         <include name='javax/mail/search'/>
         <include name='gnu/mail/providers/smtp'/>
         <include name='gnu/mail/providers/imap'/>
         <include name='gnu/mail/providers/pop3'/>
         <include name='gnu/mail/providers/nntp'/>
         <include name='gnu/mail/providers/mbox'/>
         <include name='gnu/mail/providers/maildir'/>
       </packageset>


from:

http://svn.sv.gnu.org/viewvc/trunk/mail/build.xml?revision=1156&root=classpathx&view=markup


which closely matches:


thufir@dur:~$ jar -tf /usr/share/java/gnumail-providers.jar
META-INF/
META-INF/MANIFEST.MF
gnu/
gnu/mail/
gnu/mail/providers/
gnu/mail/providers/ReadOnlyMessage.class
gnu/mail/providers/imap/
gnu/mail/providers/imap/ACL.class
gnu/mail/providers/imap/IMAPBodyPart.class
gnu/mail/providers/imap/IMAPFlags.class
...
gnu/mail/treeutil/StatusListener.class
gnu/mail/treeutil/StatusSource.class
META-INF/COPYING
META-INF/javamail.address.map
META-INF/javamail.providers
thufir@dur:~$


However, there seem to be far more .class files in the resulting JAR 
than the Ant build file would seem, to me, to package there.

I normally let Netbeans autogenerate the build files, which I would like 
to do in this case as well.  However, I'm not sure **which** JAR's are 
needed to build this JAR, what the dependency structure is, nor am I 
quite clear on which packages should be in the src directory.

There are quite a few .class files in this JAR.

Looking at what Ubuntu does, apt-get install libgnuinet-java 
libgnujaf-java libgnumail-java will bring in:

/usr/share/java/inetlib.jar
/usr/share/java/activation.jar
/usr/share/java/gnumail-providers.jar
/usr/share/java/gnumail.jar


It's only the gnumail-providers JAR which I would like to build 
manually, with Ant.

Yes, I'm aware of the irony of asking on an Apache mailing list about 
GNU.  I'm inferring some sort of political decision by GNU not to use 
Ant, and, I'm sure there, are other API's.


thanks,

Thufir



see also:

http://stackoverflow.com/questions/20729124/

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org


Mime
View raw message