I have a plugin in the parent pom with the below code:
org.apache.maven.plugins
maven-surefire-plugin
${surefire.plugin.version}
${surefireArgLine}
../target/surefire-reports
The in the child pom, I want to exclude the javaee-api.jar in the build path of test scope as below shows.
org.apache.maven.plugins
maven-surefire-plugin
javax:javaee-api
But the javaee-api.jar is still showing in the classpath. Any thought?
ons-collections4\4.1\commons-collections4-4.1.jar, C:\Users\y2944.m2\repository\commons-dbutils\commons-dbutils\1.6\commons-dbutils-1.6.jar, C:\Users\y2944.m2\repository\log4j\log4j\1.2.17\log4j-1.2.17.jar, C:\Users\y2944.m2\repository\javax\faces
\javax.faces-api\2.1\javax.faces-api-2.1.jar, C:\Users\y2944.m2\repository\javax\servlet\javax.servlet-api\3.0.1\javax.servlet-api-3.0.1.jar, C:\Users\y2944.m2\repository\com\csx\services\xx\nas-engine-api\1.1.0\nas-engine-api-1.1.0.jar, C:\Users\y
2944.m2\repository**javax\javaee-api\7.0**\javaee-api-7.0.jar, C:\Users\y2944.m2\repository\com\sun\mail\javax.mail\1.5.0\javax.mail-1.5.0.jar, C:\Users\y2944.m2\repository\javax\activation\activation\1.1\activation-1.1.jar, C:\Users\y2944.m2\reposi
tory\org\apache\commons\commons-lang3\3.1\commons-lang3-3.1.jar, C:\Users\y2944.m2\repository\commons-io\commons-io\1.3.2\commons-io-1.3.2.jar, C:\Users\y2944.m2\repository\org\primefaces\primefaces\6.0.18\primefaces-6.0.18.jar, C:\Users\y2944.m2\
repository\org\apache\poi\poi-ooxml\3.10.1\poi-ooxml-3.10.1.jar, C:\Users\y2944.m2\repository\org\apache\poi\poi\3.10.1\poi-3.10.1.jar, C:\Users\y2944.m2\repository\org\apache\poi\poi-ooxml-schemas\3.10.1\poi-ooxml-schemas-3.10.1.jar, C:\Users\y294
4.m2\repository\org\apache\xmlbeans\xmlbeans\2.6.0\xmlbeans-2.6.0.jar, C:\Users\y2944.m2\repository\dom4j\dom4j\1.6.1\dom4j-1.6.1.jar, C:\Users\y2944.m2\repository\org\apache\xmlbeans\xmlbeans-qname\2.6.0\xmlbeans-qname-2.6.0.jar, C:\Users\y2944.
m2\repository\org\apache\xmlbeans\xmlbeans-xmlpublic\2.6.0\xmlbeans-xmlpublic-2.6.0.jar]
解决方案
It's the issue with javaee-api.jar with interface only, no implementation. And the exclusion didn't work. So I added the implementation on the test scope.
org.glassfish
javax.faces
2.3.3
test
`