You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general@xml.apache.org by Peter Donald <do...@mad.scientist.com> on 2000/06/20 13:42:07 UTC

[RFE] Apache Packaging standard ?

Hi,

I am reposting this to all the general lists, possibly excessive
cross-posting but I figured it may be of interest to all.

Pete

----------------
Hi,

I would like to request a packaging standard to be instituted in the java
projects at apache. This is similar to what Sam Ruby proposed before but on
a much lower scale. For instance when you download an apache project now
the positions of the files seem to be somewhat haphazardly placed.

Most have similar layout but there are some cases that are slightly
different and can be slightly frustrating when looking at the various
projects.

Most of the projects follow something similar to the following

<basedir>
	src/
	lib/
	build/
	bin/
	tools/

Under source some projects have another directory java (I assume because at
one stage there was non-java code in tree and you needed to differentiate
???) which holds the source and other projects have no such directory.

Some projects place all required .jar files in lib directory while some
place the .jar files in bin or in tools subdirectories.

Some projects copy source to another tree below build (I assume this is
becaues 1.1 doesn't have touch functionality ???) while others don't. I
believe most projects generate classes to build/classes while some have
further sub-directories (such as avalon).

Some build.xml files include help and most have similar options but may
generate output in different places. (ie javadoc sometimes goto
docs/apidocs sometimes to build/javadocs and othertimes to other places :P).

While it is not a major hassle moving between these projects it can be a
bit frustrating (in one case I deleted a directory I shouldn't have because
it was deletable in another project). 

Some suggestions (that you are free to ignore if you feel like it are)

<basedir>
	lib/                 <--------- includes required libraries
	src/                 <--------- includes required source
	bin/                 <--------- includes required scripts except build.sh
	docs/                <--------- includes basic docs/generated website-docs
	docs/apidocs         <--------- includes generated javadocs
	docs/src             <--------- includes document source if it is xml files
	build/classes        <--------- temporary place for .class files
	README               <--------- standard README or pointer to relevent doc
in docs
	INSTALL              <--------- standard INSTALL or pointer to relevent
doc in docs
	<outputs>.jar        <--------- includes generated code archives
	LICENSE	       <--------- standard Apache LICENSE

Thoughts ???







Cheers,

Pete

*------------------------------------------------------*
| "Nearly all men can stand adversity, but if you want |
| to test a man's character, give him power."          |
|       -Abraham Lincoln                               |
*------------------------------------------------------*