Yeah, I needed something like this as well and I think the answer in theory is to declare the dependencies as "provided". Unfortunately, this isn't implemented for inter-project dependencies, but if you open a bug, I'll try to get it implemented for the next version.
For now, I'd try something like:
jettyClasspaths <<=
(jettyClasspaths,
exportedProducts in (core, Compile),
exportedProducts in (generated, Compile) map {
(jc, coreProd, genProd) =>
jc.copy(classpath =
jc.classpath -- coreProd.files -- genProd.files)
}
This takes JettyClasspaths[1] and removes the main classes/resources for core and generated from the webapp classpath. Here I've assumed you have in your Build.scala something like:
lazy val core = Project(...)
lazy val generated = Project(...)
-Mark
[1] https://github.com/siasia/xsbt-web-plugin/blob/master/src/main/scala/WebPlugin.scala#L18
Yeah, I needed something like this as well and I think the answer in theory is to declare the dependencies as "provided". Unfortunately, this isn't implemented for inter-project dependencies, but if you open a bug, I'll try to get it implemented for the next version.