Re: provided as compileOnly

Previous Topic Next Topic
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Re: provided as compileOnly

Am 2020-07-29 um 12:18 schrieb Elliotte Rusty Harold:

> Per Maven docs provided scope "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. A dependency with this scope is added to the classpath
> used for compilation and test, but not the runtime classpath. It is
> not transitive."
> My team has noticed a number of artifacts using provided as more of a
> compileOnly scope. That is, they want the dependency on the compile
> time classpath, but do not want it on the runtime classpath. They do
> not expect the web container, JVM, or anything else to put it on the
> runtime classpath.
> Is this an acceptable use of provided, and if so should we update the
> docs? Or is this a hack and misuse of provided scope that is likely to
> cause problems?

I think your usage is correct. Maybe the docs aren't sharp enough saying
that those case just examples which require a provided scope. You can,
of course, improve the docs in such a fashion.
Out of couriosity, can you give you can example for your usecase?

To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]