axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aaron.Kn...@vodafone.co.nz
Subject Re: Compilation trouble
Date Sun, 13 Apr 2003 21:09:59 GMT

Hi Steve,

Thanks for your reply.  Using ant from in my IDE does get me started.  (I
do use IDEA and refactoring is great).

I agree that ant is a great tool.  I have been using it since version 1.0.
(I contributed the original patch for the includesfile/excludesfile
attributes.)  I have my doubts about using it in the manner that you do for
the Axis project, however.  I can see that it works, but it has several
drawbacks:

*    It encourages a poor division between core and non-core code.  (The
lack of a plugin architecture is probably due, in part, to the general
acceptance of this as a workaround.)
*    The ant script is made more complex by the inclusion/exclusion of
various bits of code.
*    Keeping the ant script up to date with all of the required/optional
libs and their versions becomes painful.  (As you can see, it simply
doesn't get updated.)
*    Setup is non-obvious for project newcomers.
*    Compilation takes several seconds, instead of less than one second.

If a plugin framework is considered desirable, perhaps a good way to start
would be to make all of the current optional bits into addons?  Alongside
that effort, a standard for packaging plugins, web services and handlers
would also be a handy feature.  It would be useful to be able to include a
deployment descriptor with the web service implementation and have axis
find that automatically.  (Obviously, being able to override the config
from the packaged descriptor without having to re-package it would be a
requirement.)

As to fixing the docs, I may find some time to update the obvious bits, but
someone with a little more familiarity with the project really needs to
list required libs and versions and where to get them (if they are not
included).

Cheers

ADK



--------------------------------------------

There is no magic.


                                                                                         
       
                    "Steve                                                               
       
                    Loughran"            To:     <axis-dev@ws.apache.org>          
             
                    <steve_l@isera       cc:                                          
          
                    n.com>               Subject:     Re: Compilation trouble         
          
                                                                                         
       
                    04/12/03 05:30                                                       
       
                    PM                                                                   
       
                    Please respond                                                       
       
                    to axis-dev                                                          
       
                                                                                         
       
                                                                                         
       





----- Original Message -----
From: "Aaron Knauf" <aknauf@xtra.co.nz>
To: <axis-dev@ws.apache.org>
Sent: Saturday, April 12, 2003 07:19
Subject: Compilation trouble


>
> I checked out the axis source from CVS and was disapointed to find that
> it does not compile.  After reading the docs on the wesite (including
> the developers' guide) I was no closer to compilation.

Sorry to hear that.

>
> It took me about an hour to track to th libraries necessary to make the
> build.xml::compile target execute sucessfully.  It has taken me 2 more
> hours to determine that getting the source to compile in my IDE is just
> too hard.  This is because an IDE tries to compile the entire source
> tree, whereas the build script filters out several parts.  You might
> argue that the build script is the canonical definition of "does
> compile" vs "does not compile", but I for one will not consider working
> on a project that does not compile in my IDE - even in my day job!

Do you have an IDE that doesnt let you invoke Ant? You should try Eclipse
or
IDEA; refactoring makes it all better. Axis is not designed to build in an
IDE without Ant, as patternsets control which thngs to build.

>
> In the spirit of open source projects I looked in to what it would take
> to fix this problem.  I found that the main problem is that a large
> amount of plugin code is included in the main source tree, making it
> necessary to obtain a huge number of external libs to put on the
> classpath.  The most appropriate way to address to problem is to move
> plugin code to the addons directory.

More core is we need a better add-on architecture, from which the code can
fall in.

>
> This is not something that a newcomer to the project can really fix.
>  Even trying to work around the problem for myself is difficult, as I
> would need to delete all the unnecassary classes from the source tree.

Stop trying to build in an IDE. Embrace Ant -its there to make your life
consistent with everyone else, and to automatically exclude bits of the
source tree when the libraries they need are missing.

Ant-in-IDE works just fine for me.

NB: If you think Axis has a lot of external dependencies, you try building
Ant itself. That one needs some classes built on Java1.4, the rest on
Java1.3 (for backwards compatibility).

>
> Here is a list of some of the plugin code that is in the main source
> tree, but not necessary for normal operation of axis:
> *    SonicMQ adapter
> *    IBM JSSE adapter
> *    Caster Serializer
> *    Commons HTTP-Client based HTTP sender
> *    Mail transport
>

> A secondary issue is that the libraries required for ant compilation are
> not include with the distribution - nor are they listed anywhere.  The
> build script lists some libs as required and others as optional.
>  Several that are listed as optional are actually required.

We celebrate improved documentation :) Seriously, fix the docs, send the
patches. Its hard to keep them up to date.

>
> Unless the prospective contributor recognises the package names of the
> missing libraries, there is no way to know which ones are required!
>  Although I do recognise most of them, there is absolutely no way to
> know which versions are necessary.  (Using the latest JSSE, for example,
> does not work.)

I didnt know that. But then I probably dont build with JSSE as ant excludes
the bits I dont care about (like JMS).

-steve






-----------------------------------------------------------------------------------------------
Have you seen our website?.... http://www.vodafone.co.nz

CAUTION: This correspondence is confidential and intended for the named recipient(s) only.
If you are not the named recipient and receive this correspondence in error, you must not
copy,
distribute or take any action in reliance on it and you should delete it from your system
and
notify the sender immediately.  Thank you.

Unless otherwise stated, any views or opinions expressed are solely those of the author and
do
not represent those of Vodafone New Zealand Limited.

Vodafone New Zealand Limited
21 Pitt Street, Private Bag 92161, Auckland, 1020, New Zealand
Telephone + 64 9 357 5100
Facsimile + 64 9 377 0962

Mime
View raw message