That's a really interesting idea and I can see the use of it. I'm not sure it fits with how scopes work in Maven or classpaths in Java though. A scope generally defines which jars are and are not added to the classpaths of which goals/plugins/stages, not which parts of the source tree can see what. Perhaps this would work if your proposed main scope were added to compile and run but not test? However, I suspect the transitive dependencies would still be needed in the classpath or the tests will fail with runtime NoClassDefFoundErrors and the like.
What you want sounds a little like strict_java_deps in bazel: https://blog.bazel.build/2017/06/28/sjd-unused_deps.html On Thu, Jan 23, 2020 at 2:17 AM Scott Wilson <[email protected]> wrote: > > *Hi Robert and devs* > > > *I have been using maven for a few years and I LOVE it!* > > > *I have a feature request.* > > > *(1) When adding a dependency to pom.xml the default scope is everywhere* > > *ie src/main/java/....* > > *and src/tst/java/...* > > > *(2) When adding <test> as the scope then the dependency can ONLY be used > under src/tst/java...* > > *If referencing the dependency in src/main/java/... then it will not > compile* > > > *(3) My feature request:* > > *I want the exact opposite. I'd like a new scope called <main>* > > *If the scope is <main> then the dependency can ONLY be used under > src/main/java/...* > > *If referencing the dependency in tst/main/java/.... then it will not > compile* > > > *I read up on scopes > (**https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope > <https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#Dependency_Scope>) > *and > AFAIK this is not currently supported, but I have a specific reason for > wanting this. > > > *I'd really appreciate if someone can add that for me and let me know when > it's done.* > > *Please let me know if you have any questions.* > > > *Regards* > > *Scott Wilson* > > *http://linkedin.com/in/hockeyeh <http://linkedin.com/in/hockeyeh>* -- Elliotte Rusty Harold [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
