Circular dependencies between .java files are quite common. In these situations, it makes no sense to attempt to compile the various groups of files independently... as they're dependant on each other anyway.
My prefered approach is to keep related modules together in one source tree (/src), and all my class files together in one build tree (/classes). Then when it comes to building my system, I can simply let the Java compiler address the circular dependancy issues. (Java was designed around the idea of having the compiler do the work of managaing dependancies for us.) Now, when it comes to packaging your .jars you can selectively decide which classes should be included with the client, and which should not. Ant has some excellent capabilities there. Not to mention there are other free tools for automatically calculating dependancies and including only the required classes in the jar.) Remember, your goal is simplicity and flexability. Sure, there's an idealogical "elegance" to being able to divide up the source trees of your modules. But if it's increasing the complexity of your system and creating all sorts of circular dependancy issues, you have to ask yourself how truely elegant the approach is. Often the simplest approaches are the most elegant. Doug =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff EJB-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".
