Are you sure about that? I believe provided go on the compile classpath as well.
To quote the maven docs: Provided This is much like compile, but indicates you expect the JDK or a container to provide the dependency at runtime. For example, when building a web application for the Java Enterprise Edition, you would set the dependency on the Servlet API and related Java EE APIs to scope provided because the web container provides those classes. This scope is only available on the compilation and test classpath, and is not transitive. > -----Original Message----- > From: Ansgar Konermann [mailto:[email protected]] > Sent: Friday, January 20, 2012 9:57 AM > To: Maven Users List > Subject: Re: Difference between compile and provided scope for jar > artifacts > > Am 20.01.2012 17:44 schrieb <[email protected]>: > > > > When I build a jar file, the compile dependencies are not packaged > into > the jar. So, this means that they are expected to be provided > somewhere > else in the run time environment, doesn't it? Which means that it > doesn't > seem like there's a difference between compile and provided . . . am I > missing something? > > Yes. Dependency management capabilities of Maven. > > Maven will put compile-scoped dependencies on the compile classpath > automatically, whereas for provided it does not. > > Regards > > Ansgar ______________________________________________________________________ This message, including any attachments, is confidential and contains information intended only for the person(s) named above. Any other distribution, copying or disclosure is strictly prohibited. If you are not the intended recipient or have received this message in error, please notify us immediately by reply email and permanently delete the original transmission from all of your systems and hard drives, including any attachments, without making a copy. --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
