Peter Donald wrote:

 > On Mon, 28 Jan 2002 17:55, Leif Mortenson wrote:
 >
 >>I was going to take a crack at writing an example that shows how to work
 >>with JdbcDataSources as there are so many questions about how they are
 >>used on the list. Other examples that would be good to have initially
 >>are showing how to configure logkit. Or simply loading a single hello
 >>world component using configuration / roles.xml files and the
 >>ComponentManager.
 >>
 >
 > That would be great. Theres definetly a high barrier of entry for some
 > components because they have no examples or documentation - some 
don't > even have javadocs ;)
 >
 >
 >>Thoughts how this should be structured? Obviously, the first few should
 >>also include documentation to get that going as a standard. :-) Using
 >>the Cocoon based docs seems like the best way to do so...
 >>
 >
 > Well in the near future I had the following in mind. I need to have
 > certain components in excalibur distributable (is that a word?)
 > separately. So if I just want the CLI package I can just grab
 > excalibur-cli-1.0.jar or whatever.
 > Theres a bunch of stuff I have at home I have got to commit up and
 > theres a bunch of stuff that I want to organize better and stabilize
 > and bring into excalibur. I wanted to move this to the commons project
 > but that doesn't really seem viable so I was going to create a
 > separate hierarchy like
 >
 > jakarta-avalon-excalibur\aut\cli\... <insert cli package here>
 > jakarta-avalon-excalibur\aut\io\... <insert io package here>
 > jakarta-avalon-excalibur\aut\tar\... <insert tar package here>
 > jakarta-avalon-excalibur\aut\naming\... <insert naming package here>
 >
 > That way would be much easier to use any of these little components. I
 > was thinking of doing this mid-late feb but if you want to start
 > something like this now then that would be great. You could then put
 > examples in the respective directories such as
 >
 > jakarta-avalon-excalibur\aut\jdbc\examples\example1
 > jakarta-avalon-excalibur\aut\jdbc\examples\example2
 > etc
 >
 > This keeps the examples small and relevent to the component - nice and
 > focused and should make maintanence of the whole toolkit much easier.

I am trying to understand this :-)  Are you planning on restructuring 
existing packages into a buch on sub projects within the excalibur 
project?  What does 'aut' stand for?

I was actually thinking that having a project whose sole purpose was to 
be a home for various examples would make it easier for new users to get 
their hands around Avalon.  Each example will be completely independent 
and run "out of the box" without the user having to much.  My goal was 
to be able to have people see a JdbcDataSource, or Logger example 
mentioned on the website.  Be able to download the examples project and 
then have the example running on their machine where they can see it 
work all within 15min to an hour (plus download of course) :-)


I saw a couple of drawbacks to placing the examples in the 
jakarta-avalon-excalibur project.
1) It would make the size of the project balloon and be harder to manage.

2) Having everything together would make the whole Avalon system harder 
to get your arms around.  Both for developers and users.

3) Most users of Avalon will hopefully not ever need to see the 
sourcecode for avalon-framework.jar, avalon-excalibur.jar or 
avalon-scratchpad.jar.  I think that if a new user HAS TO go in and look 
at the source code before they can get their program running, then that 
is a failure on the documentation side.

4) At some point one goal that I think would be good to aim for is to be 
able to have a user distributions of Framework and Excalibur that just 
contains the jars, javadocs and documentation.  The users would be able 
to download the examples distribution, or the source distribution 
optionally.   (Of course users will always be able to see the raw CVS if 
they want)


I will upload an archive containing a draft of a new 
jakarta-avalon-examples project which includes a JdbcDataSource example 
application, in the morning.



I think that I am missing what you want to do with the 
excalibur-cli-1.0.jar and other feature specific jars.  But couldn't 
that already be done now by simply building the specific jars, including 
only certain packages from the source?

Peter Donald wrote:

> On Mon, 28 Jan 2002 18:30, Leif Mortenson wrote:
> 
>>One option that I was thinking of was to have an examples wide build.xml
>>file in the root which contains an init-jars task. This task could be
>>called by the various examples' builds. Its job would be to look for the
>>required jars and copy them into a build directory within the
>>jakarta-avalon-examples project. It would first copy the files from the
>>tools/ext directory, then try copying them from the various build
>>directories. By doing this, the examples would always have an up to date
>>copy of the jars to work with.
>>
> 
> Personally I would prefer that there is an ant.properties or build.properties 
> file that contains the mapping between the name of jar and the location of 
> the jar. They could have defaults that used either the jars in the tools/ext 
> directory or they could use newly created jars. So you end up with
> 
> framework.jar=../../jakarta-avalon/tools/ext/avalon-framework.jar
> excalibur-cli.jar=../../jakarta-avalon/tools/ext/excalibur-cli.jar
> excalibur-naming.jar=../../jakarta-avalon/tools/ext/excalibur-naming.jar
> 
> etc.
> 
> See the project.properties file in phoenix CVS for an example.


Where the jars come from is kind of a fine point that can be worked out 
once the main structure is set up.


>>2)
>>In addition to the init task, the project build.xml file would have a
>>docs task which would look for src/documentation directories in each of
>>the example applications and then build a common documentation set. This
>>documentation set could then be added to the jakarta-avalon-site
>>directory for inclusion in the Avalon website.

 >

> +1 
> 
> Works for me ;)
> 
Take a look at the draft project when I upload it in the morning.

(I don't have it on this computer :-)


Cheers,
Leif






--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to