I’m prototyping a Gradle multi-project build for a large project. My prototype consists of a 2 projects, one which builds a utility jar and another that builds a web app (war).
The actually build works fine (eg
gradlew jettyRunWar) but I’m having issues with the eclipse-wtp plugin.
It generates projects which Eclipse happily imports and compiles. However when I run my web app in Eclipse (Run As| Run on Server) I get a ClassNotFound exception because the classes from my utility jar are not deployed to my server.
I suspect that it is this declaration in my web apps org.eclipse.wst.common.component file that is the problem:
<dependent-module deploy-path="/WEB-INF/lib" handle="module:/resource/utillib/utillib"> <dependency-type>uses</dependency-type> </dependent-module>
I would have thought that such a simple setup would have worked out of the box but I believe that Eclipse Mars has some changes to the WTP deployment/assembly functionality and I wonder if something has been broken.
My prototype can be found here: https://github.com/rabidgremlin/GradleMultiProjectExample
And the URL which causes issues is the call to the servlet http://localhost:8080/thewebapp/hello
I’m deploying to the “J2EE Preview” server that ships with Eclipse Mars (which appears to be Jetty 9.2)