Berin Loritsch wrote:
why do you need to copy source files? Do the tools/ need access to container/ sourcefiles at runtime?

Yes. THe tools make use of the util/dag/** stuff as well as the util/Service class and the impl/roles/ServiceMetaManager for various aspects.

ok, I get the problem now. What we have, in fact, is a circular dependency between fortress-container and fortress-tools, because the tests for fortress-container utilise the metainfo task provided by fortress-tools, and fortress-tools utilizes classes from fortress-container.


---

Your solution to the problem is

1) duplicate the classes fortress-tools needs from fortress-container, ie, copying them, at buildtime, before compiling

A few more options:

2) don't use the metainfo task in the fortress-container tests, breaking the loop and removing the dependency on fortress-tools, generating a convenience 'fortress-tools-complete.jar' containing the required materials from fortress-container.jar (or maybe everything from fortress-container-complete, for convenience)

3) seperate out the code that the tools need into a new (mini-)subproject, fortress-util (and/or perhaps a fortress-meta)

4) make fortress-container generate a jar that contains sourcefiles, and fetch and unpack that from fortress-tools

---

my preference is probably #2, because it seems the cleanest conceptually: unit tests should not depend on dependencies of what they are testing, and having a subproject for three classes is ugly.

Regardless of all that, I think for the gump build it is cleanest to not modify the ant buildfile but just have inherit="runtime" for dependencies on fortress-tools. This does not require buildfile customization and is consistent with how this works for other build projects (like ant).

cheers!

- LSD



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



Reply via email to