You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by Peter Donald <do...@mad.scientist.com> on 2000/06/20 12:39:19 UTC

[RFE] Apache Packaging standard ?

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                               |
*------------------------------------------------------*

Re: [RFE] Apache Packaging standard ?

Posted by Stefan Bodewig <bo...@bost.de>.
>>>>> "PD" == Peter Donald <do...@mad.scientist.com> writes:

 PD> Thoughts ???

Yes, you are probably right that a common directory structure is
desirable, but this is probably the wrong place to ask for
it. jakarta-general might be a better place for the scope of the
jakarta.apache projects.

Stefan

Re: [RFE] Apache Packaging standard ?

Posted by Giacomo Pati <Gi...@pwr.ch>.
On Tue, Jun 20, 2000 at 08:39:19PM +1000, Peter Donald wrote:
> 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 ???

I would also see a build.xml template which defines the standard targets to use.

Giacomo

-- 
PWR GmbH, Organisation & Entwicklung      Tel:   +41 (0)1 856 2202
Giacomo Pati, CTO/CEO                     Fax:   +41 (0)1 856 2201
Hintereichenstrasse 7                     Mailto:Giacomo.Pati@pwr.ch
CH-8166 Niederweningen                    Web:   http://www.pwr.ch