This is intentional. Why does project A declare it as "provided"? That
is only intended to be used in the "end POM" itself. If you really
require it at compile time, and intend to pass it on, you should use
"compile" scope.

Cheers,
Brett

Kenney Westerhof wrote:

>Hi, i'm facing this problem:
>
>Project A has a servlet implementation that (obviously) extends
>HttpServlet and has a dependency on servletapi, scope=provided.
>
>Project B depends on project A (scope=compile), and extends the servlet
>defined in A. Now, if it doesn't call/override methods in A that
>have a servletapi parameter (i.e. HttpServletRequest), B doesn't need
>to have a dep on servletapi.
>
>However, as soon as B overrides/uses a method that has HttpServletRequest
>as a parameter, it requires a dependency on servletapi.
>
>This seems odd to me. I just want to extend A, depend on it, so I get
>everything I need, and just override a method that does a
>System.out.prinltn and delegates to the parent (for instance). Why would I
>need to specify a dependency on servletapi then myself?
>
>I've located the place where scope=provided gets nuked in transitive
>dependencies: maven-artifact's DefaultArtifactFactory.createArtifact.
>
>I really want to make the provided scope inheritable, but wanted to
>check with you guys first to see wheter this is wanted and wheter to do
>this now of after beta-1 is released.
>
>WDYT?
>
>-- Kenney
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>
>  
>

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

Reply via email to