Reputation: 5787
I have a Java project that is dependent on other Java projects that are siblings and there is a chain of dependencies. Each individual project has a build script written in Ant. For clarity find below a sample of the same.
EARProject
depends on WebProject
and EJBProject
: The war
file that is generated by the WebProject
build and jar
file that is generated by the EJBProject
are needed to build the EARProject
.
WebProject
depends on ComponentOneProject
: The jar
file that is generated by the ComponentOneProject
build is needed to build WebProject
.
EJBProject
depends on ComponentTwoProject
: The jar
file that is generated by the ComponentTwoProject
build is needed to build EJBProject
.
So, when I build the EARProject
build, if the dependent war
and jar
have not been built yet, then it should kick-off the WebProject
build and EJBProject
build and if the ComponentOneProject
is yet to be built, the build of ComponentOneProject
needs to be kicked-off and so on.
Can someone suggest a clean method by which we can accomplish this?
Upvotes: 1
Views: 221
Reputation: 12337
Facing the same problem we at our company wrote a custom Groovy script that explores the full dependency tree ant generates the Ant build scripts based on all the .project, .classpath, .settings/* files. This wasn't as difficult as it might seem as first. This way we can build our products without (My)Eclipse on a clean CVS+JDK+Groovy virtual machine. Hope it helps..
Upvotes: 1