Sylvain Wallez wrote:
Hi team,

I've been using Eclipse for some months and it's now my preferred IDE. However, creating a Cocoon project under Eclipse isn't a piece of cake : all source files depending on optional libraries fail to compile, preventing Eclipse to properly build the project.

So, following Nicola Ken's idea, I wrote mock classes for libraries that aren't included in Cocoon's CVS. So far so good, the Cocoon Eclipse project now builds smoothly. But this reveals something that I'm not comfortable with, even if I have lived with it for years : the Cocoon build system does not compile all source files, depending on which libraries that are actually present in the classpath.

This has several consequences :
- some source files are never compiled (how many of you have phpservlet.jar in their classpath ?)
- uncompiled source files aren't included in the binary distribution (neither in the jar nor in the javadoc), and are therefore totally hidden to average users
- worst of all : we may release an official version that contains files that don't even compile !

So I propose that we _remove all the conditional compilation stuff_ and write mock classes where needed to ensure that _all_ source files are always compiled.

Note that mock classes don't prevent the use of the real libraries : jars in lib/local are placed before the mock classes in the classpath and are therefore used, if present, to compile the source code.

I have most of this ready on my hard drive, but since this is a change in the way we handle external dependencies, I'd like to have your opinion before committing anything.

Thoughts ?
Having used Eclipse myself I know exactly your feeling but didn't have your patience :)

But IDE aside, I think the concern of shipping code that doesn't even compile is a good one so here is my +1 for turning *on* compilation for everything... which will ensure at least more compile-time testing of our code

(note: these problems will hopefully go away with blocks)

--
Stefano Mazzocchi <[EMAIL PROTECTED]>
--------------------------------------------------------------------



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]



Reply via email to