Joerg,
I'm not sure whether you're serious or just joking. I'm not suggesting
anyone do anything with regard to what is going on in migrating to Maven
2, especially since I haven't begun to look at the improvements that
have been made to Maven. However, I'm not sure how any tool could
behave differently. Anytime you don't compile all the code at once these
sorts of problems will occur. For example, if Block A has an import to
a class in Block B and Block B imports a class in Block A one of these
will fail to compile unless they are both compiled together which, of
course, you don't want to do if they are truly independent blocks.
Ralph
Joerg Heinicke wrote:
On 30.08.2005 17:31, Ralph Goers wrote:
A word of caution. One thing we ran into with Maven 1 was that we
ended up splitting individual components into 3 parts; api, impl and
test. As you start moving from one monolithic project into smaller
subcomponents which are compiled separately you will soon find that
you have circularity problems. The only good way to solve this is to
use lots of interfaces. To some degree we already see this today
where we have blocks depending on each other. Test is split off
because very often the runtime dependencies are different than the
compile-time dependencies. In addition, the Cocoon samples often
introduce dependencies that the core code of the project or even the
test cases don't need.
So to summarize, I would suggest that it would be a good idea for
each "component" - be it core or a block - to have api, impl, test
and samples projects.
Did I mention that I hate tools needing changes in the subject they
should work on to make them work? The above scenario and the other
mentioned necessary restructurings were the reason why I ever were
against a change of the build system to Maven.
Ok, we really have a problem with our current build system. Nobody (me
included) started with another solution like Ant 1.6 or similar. The
Maven fraction started now to address the problem and I'm ok with it.
The above rant probably just shows I'm a smart-ass ;-)
Joerg