I've seen that in Eclipse for a long time. Gary
On Tue, Oct 17, 2023, 2:57 PM David Karr <davidmichaelk...@gmail.com> wrote: > I have a feeling this has been covered before, but I'll ask just in case. > > I have a pom.xml that inherits from a parent pom, and the child pom has the > following plugin definition: > ---------------------- > <plugin> > <artifactId>maven-compiler-plugin</artifactId> > <version>3.8.0</version> > <configuration combine.self="override"> > <release>11</release> > <annotationProcessorPaths> > <path> > <groupId>org.projectlombok</groupId> > <artifactId>lombok</artifactId> > <version>1.18.30</version> > </path> > </annotationProcessorPaths> > </configuration> > </plugin> > ---------------------- > > Notice the "combine.self" attribute. In a command line mvn build, this does > exactly what it needs to, completely overriding the plugin configuration > inherited from the parent pom. If I don't have that, it results in errors > because it "merges" the plugin configs by default. > > What's annoying is that if I open this pom.xml in Eclipse, with the m2e > plugin, I get the following error on that line: > > cvc-complex-type.3.2.2: Attribute 'combine.self' is not allowed to > appear in element 'configuration'. > > I, along with multiple other people, assumed that this indicates a bug in > m2e, because it clearly works in the command-line build. However, it was > pointed out that m2e is actually USING the defined schema defined in the > boilerplate of a pom.xml, instead of ignoring it, and if you open up that > schema, it clearly shows the lack of an "attribute" element in the > "configuration" complex-type. > > So, clearly mvn is using that attribute, but I'm guessing it's not doing > any schema validation, or builds using that attribute would fail. > > I have a feeling this situation has been in place for a long time. >