Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package maven-compiler-plugin for
openSUSE:Factory checked in at 2026-02-02 14:58:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/maven-compiler-plugin (Old)
and /work/SRC/openSUSE:Factory/.maven-compiler-plugin.new.1995 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "maven-compiler-plugin"
Mon Feb 2 14:58:40 2026 rev:11 rq:1330372 version:3.15.0
Changes:
--------
---
/work/SRC/openSUSE:Factory/maven-compiler-plugin/maven-compiler-plugin.changes
2025-09-23 16:09:01.267966989 +0200
+++
/work/SRC/openSUSE:Factory/.maven-compiler-plugin.new.1995/maven-compiler-plugin.changes
2026-02-02 14:58:57.324056660 +0100
@@ -1,0 +2,24 @@
+Mon Feb 2 09:36:54 UTC 2026 - Fridrich Strba <[email protected]>
+
+- Upgrade to upsteam release 3.15.0
+ * Bug Fixes
+ + Fix Java 25 compatibility during integration tests
+ + MCOMPILER-540: useIncrementalCompilation=false may add
+ generated sources to the sources list
+ * Maintenance
+ + Bump org.apache.maven.plugins:maven-plugins from 45 to 46
+ + Remove declaration of "plexus-snapshots" repository
+ + Works only with Maven 4.0.0 rc4
+ + Enable Java 25 and Maven 4 in CI
+ * Dependency updates
+ + Bump maven-plugin-testing-harness to 3.5.0
+ + Bump plexusCompilerVersion from 2.15.0 to 2.16.2
+ + Bump org.apache.maven.plugins:maven-plugins from 46 to 47
+ + Bump org.codehaus.plexus:plexus-java from 1.5.0 to 1.5.2
+ + Bump org.ow2.asm:asm from 9.8 to 9.9.1
+ + Bump mavenVersion from 3.9.11 to 3.9.12
+- Modified patch:
+ * maven-compiler-plugin-bootstrap-resources.patch
+ + regenerate in cycle by itself
+
+-------------------------------------------------------------------
Old:
----
maven-compiler-plugin-3.14.1-source-release.zip
New:
----
maven-compiler-plugin-3.15.0-source-release.zip
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ maven-compiler-plugin.spec ++++++
--- /var/tmp/diff_new_pack.tWpy4R/_old 2026-02-02 14:58:58.312098423 +0100
+++ /var/tmp/diff_new_pack.tWpy4R/_new 2026-02-02 14:58:58.312098423 +0100
@@ -23,7 +23,7 @@
%bcond_with bootstrap
%endif
%global base_name maven-compiler-plugin
-Version: 3.14.1
+Version: 3.15.0
Release: 0
Summary: Maven Compiler Plugin
License: Apache-2.0
++++++ _scmsync.obsinfo ++++++
--- /var/tmp/diff_new_pack.tWpy4R/_old 2026-02-02 14:58:58.360100452 +0100
+++ /var/tmp/diff_new_pack.tWpy4R/_new 2026-02-02 14:58:58.364100620 +0100
@@ -1,6 +1,6 @@
-mtime: 1758630752
-commit: bacf04ce5d07a984a4d1de12412fb17a241d6200a126776ffc639adc03ddfe7f
+mtime: 1770025396
+commit: f740193a7d2598f5be89acb69b2d801bf2e19471cead620c1fdcc4c58b244d2e
url: https://src.opensuse.org/java-packages/maven-compiler-plugin.git
-revision: bacf04ce5d07a984a4d1de12412fb17a241d6200a126776ffc639adc03ddfe7f
+revision: f740193a7d2598f5be89acb69b2d801bf2e19471cead620c1fdcc4c58b244d2e
projectscmsync: https://src.opensuse.org/java-packages/_ObsPrj
++++++ build.specials.obscpio ++++++
++++++ build.specials.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/.gitignore new/.gitignore
--- old/.gitignore 1970-01-01 01:00:00.000000000 +0100
+++ new/.gitignore 2026-02-02 10:43:57.000000000 +0100
@@ -0,0 +1 @@
+.osc
++++++ maven-compiler-plugin-3.14.1-source-release.zip ->
maven-compiler-plugin-3.15.0-source-release.zip ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/maven-compiler-plugin-3.14.1/.gitignore
new/maven-compiler-plugin-3.15.0/.gitignore
--- old/maven-compiler-plugin-3.14.1/.gitignore 2025-09-18 23:34:28.000000000
+0200
+++ new/maven-compiler-plugin-3.15.0/.gitignore 1970-01-01 01:00:00.000000000
+0100
@@ -1,15 +0,0 @@
-target/
-.project
-.classpath
-.settings/
-.svn/
-bin/
-# Intellij
-*.ipr
-*.iml
-.idea
-out/
-.DS_Store
-/bootstrap
-/dependencies.xml
-.java-version
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/maven-compiler-plugin-3.14.1/DEPENDENCIES
new/maven-compiler-plugin-3.15.0/DEPENDENCIES
--- old/maven-compiler-plugin-3.14.1/DEPENDENCIES 2025-09-18
23:34:28.000000000 +0200
+++ new/maven-compiler-plugin-3.15.0/DEPENDENCIES 2026-01-27
00:09:12.000000000 +0100
@@ -17,16 +17,16 @@
From: 'Codehaus Plexus' (https://codehaus-plexus.github.io/)
- - Plexus Compiler Api
(https://codehaus-plexus.github.io/plexus-pom/plexus-compiler/plexus-compiler-api/)
org.codehaus.plexus:plexus-compiler-api:jar:2.15.0
- License: Apache License, Version 2.0
(https://www.apache.org/licenses/LICENSE-2.0.txt)
+ - Plexus Compiler Api
(https://codehaus-plexus.github.io/plexus-pom/plexus-compiler/plexus-compiler-api/)
org.codehaus.plexus:plexus-compiler-api:jar:2.16.2
+ License: Apache-2.0 (https://www.apache.org/licenses/LICENSE-2.0.txt)
- - Plexus Javac Component
(https://codehaus-plexus.github.io/plexus-pom/plexus-compiler/plexus-compilers/plexus-compiler-javac/)
org.codehaus.plexus:plexus-compiler-javac:jar:2.15.0
- License: Apache License, Version 2.0
(https://www.apache.org/licenses/LICENSE-2.0.txt)
+ - Plexus Javac Component
(https://codehaus-plexus.github.io/plexus-pom/plexus-compiler/plexus-compilers/plexus-compiler-javac/)
org.codehaus.plexus:plexus-compiler-javac:jar:2.16.2
+ License: Apache-2.0 (https://www.apache.org/licenses/LICENSE-2.0.txt)
- - Plexus Compiler Manager
(https://codehaus-plexus.github.io/plexus-pom/plexus-compiler/plexus-compiler-manager/)
org.codehaus.plexus:plexus-compiler-manager:jar:2.15.0
- License: Apache License, Version 2.0
(https://www.apache.org/licenses/LICENSE-2.0.txt)
+ - Plexus Compiler Manager
(https://codehaus-plexus.github.io/plexus-pom/plexus-compiler/plexus-compiler-manager/)
org.codehaus.plexus:plexus-compiler-manager:jar:2.16.2
+ License: Apache-2.0 (https://www.apache.org/licenses/LICENSE-2.0.txt)
- - Plexus Languages :: Java
(https://codehaus-plexus.github.io/plexus-pom/plexus-languages/plexus-java/)
org.codehaus.plexus:plexus-java:jar:1.5.0
+ - Plexus Languages :: Java
(https://codehaus-plexus.github.io/plexus-pom/plexus-languages/plexus-java/)
org.codehaus.plexus:plexus-java:jar:1.5.2
License: Apache-2.0 (https://www.apache.org/licenses/LICENSE-2.0.txt)
- Plexus Common Utilities (https://codehaus-plexus.github.io/plexus-utils/)
org.codehaus.plexus:plexus-utils:jar:4.0.2
@@ -35,7 +35,7 @@
From: 'OW2' (http://www.ow2.org/)
- - asm (http://asm.ow2.io/) org.ow2.asm:asm:jar:9.8
+ - asm (http://asm.ow2.io/) org.ow2.asm:asm:jar:9.9.1
License: BSD-3-Clause (https://asm.ow2.io/license.html)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/maven-compiler-plugin-3.14.1/NOTICE
new/maven-compiler-plugin-3.15.0/NOTICE
--- old/maven-compiler-plugin-3.14.1/NOTICE 2025-09-18 23:34:28.000000000
+0200
+++ new/maven-compiler-plugin-3.15.0/NOTICE 2026-01-27 00:09:12.000000000
+0100
@@ -1,5 +1,5 @@
Apache Maven Compiler Plugin
-Copyright 2001-2025 The Apache Software Foundation
+Copyright 2001-2026 The Apache Software Foundation
This product includes software developed at
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/maven-compiler-plugin-3.14.1/pom.xml
new/maven-compiler-plugin-3.15.0/pom.xml
--- old/maven-compiler-plugin-3.14.1/pom.xml 2025-09-18 23:34:28.000000000
+0200
+++ new/maven-compiler-plugin-3.15.0/pom.xml 2026-01-27 00:09:12.000000000
+0100
@@ -23,12 +23,12 @@
<parent>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-plugins</artifactId>
- <version>45</version>
+ <version>47</version>
<relativePath />
</parent>
<artifactId>maven-compiler-plugin</artifactId>
- <version>3.14.1</version>
+ <version>3.15.0</version>
<packaging>maven-plugin</packaging>
<name>Apache Maven Compiler Plugin</name>
@@ -48,7 +48,7 @@
<scm>
<connection>scm:git:https://github.com/apache/maven-compiler-plugin.git</connection>
<developerConnection>scm:git:https://github.com/apache/maven-compiler-plugin.git</developerConnection>
- <tag>maven-compiler-plugin-3.14.1</tag>
+ <tag>maven-compiler-plugin-3.15.0</tag>
<url>https://github.com/apache/maven-compiler-plugin/tree/${project.scm.tag}</url>
</scm>
<issueManagement>
@@ -67,16 +67,16 @@
</distributionManagement>
<properties>
- <mavenVersion>3.9.11</mavenVersion>
- <plexusCompilerVersion>2.15.0</plexusCompilerVersion>
+ <mavenVersion>3.9.12</mavenVersion>
+ <plexusCompilerVersion>2.16.2</plexusCompilerVersion>
<groovyVersion>2.4.21</groovyVersion>
<groovyEclipseCompilerVersion>3.7.0</groovyEclipseCompilerVersion>
<groovy-eclipse-batch>2.5.14-02</groovy-eclipse-batch>
- <plexus-java.version>1.5.0</plexus-java.version>
+ <plexus-java.version>1.5.2</plexus-java.version>
<javaVersion>8</javaVersion>
<maven.it.failure.ignore>false</maven.it.failure.ignore>
-
<project.build.outputTimestamp>2025-09-18T23:34:28Z</project.build.outputTimestamp>
+
<project.build.outputTimestamp>2026-01-27T00:09:12Z</project.build.outputTimestamp>
<invoker.junitPackageName>org.apache.maven.plugins.compiler.its</invoker.junitPackageName>
</properties>
@@ -110,7 +110,7 @@
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm</artifactId>
- <version>9.8</version>
+ <version>9.9.1</version>
</dependency>
<dependency>
<groupId>org.apache.maven.shared</groupId>
@@ -171,7 +171,7 @@
<dependency>
<groupId>org.apache.maven.plugin-testing</groupId>
<artifactId>maven-plugin-testing-harness</artifactId>
- <version>4.0.0-alpha-2</version>
+ <version>3.5.0</version>
<scope>test</scope>
</dependency>
<dependency>
@@ -198,19 +198,6 @@
</dependency>
</dependencies>
- <repositories>
- <repository>
- <releases>
- <enabled>false</enabled>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- <id>plexus.snapshots</id>
- <url>https://oss.sonatype.org/content/repositories/plexus-snapshots</url>
- </repository>
- </repositories>
-
<build>
<pluginManagement>
<plugins>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-538/code/pom.xml
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-538/code/pom.xml
--- old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-538/code/pom.xml
2025-09-18 23:34:28.000000000 +0200
+++ new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-538/code/pom.xml
2026-01-27 00:09:12.000000000 +0100
@@ -90,4 +90,25 @@
</plugin>
</plugins>
</build>
+
+ <profiles>
+ <profile>
+ <id>jdk21</id>
+ <activation>
+ <jdk>[21,)</jdk>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <proc>full</proc>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+
</project>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-538/code/src/main/java/bar/.gitignore
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-538/code/src/main/java/bar/.gitignore
---
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-538/code/src/main/java/bar/.gitignore
2025-09-18 23:34:28.000000000 +0200
+++
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-538/code/src/main/java/bar/.gitignore
1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-MyAnnotatedClass.java
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/code/pom.xml
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/code/pom.xml
--- old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/code/pom.xml
1970-01-01 01:00:00.000000000 +0100
+++ new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/code/pom.xml
2026-01-27 00:09:12.000000000 +0100
@@ -0,0 +1,87 @@
+<?xml version="1.0"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
https://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>foo</groupId>
+ <artifactId>bar</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+ <artifactId>code</artifactId>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>3.1.0</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+ <profiles>
+ <profile>
+ <id>actualBuild</id>
+ <dependencies>
+ <dependency>
+ <groupId>foo</groupId>
+ <artifactId>processor</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+ </profile>
+
+ <profile>
+ <id>touchFiles</id>
+ <activation>
+ <activeByDefault>false</activeByDefault>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>touch-gen-src</id>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <phase>validate</phase>
+ <configuration>
+ <target>
+ <touch
file="${basedir}/target/generated-sources/annotations/bar/MyGeneratedClass.java"/>
+ <touch
file="${project.build.sourceDirectory}/bar/MyAnnotatedClass.java"/>
+ </target>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/code/src/main/java/bar/MyAnnotatedClass.java
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/code/src/main/java/bar/MyAnnotatedClass.java
---
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/code/src/main/java/bar/MyAnnotatedClass.java
1970-01-01 01:00:00.000000000 +0100
+++
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/code/src/main/java/bar/MyAnnotatedClass.java
2026-01-27 00:09:12.000000000 +0100
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package bar;
+
+import foo.MyAnnotation;
+
+@MyAnnotation
+public class MyAnnotatedClass {
+ MyGeneratedClass generatedClass = new MyGeneratedClass();
+
+ // foo
+
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/invoker.properties
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/invoker.properties
--- old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/invoker.properties
1970-01-01 01:00:00.000000000 +0100
+++ new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/invoker.properties
2026-01-27 00:09:12.000000000 +0100
@@ -0,0 +1,23 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+# NOTE: The first time, we run up to "integration-test" phase which includes
the AntRun execution which saves the
+# timestamp of the first JAR for comparison with the timestamp of the JAR from
the final "package" invocation.
+# Note:
+invoker.goals.1 = clean compile -PactualBuild
+invoker.goals.2 = validate -PtouchFiles
+invoker.goals.3 = compile -PactualBuild
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/pom.xml
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/pom.xml
--- old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/pom.xml
1970-01-01 01:00:00.000000000 +0100
+++ new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/pom.xml
2026-01-27 00:09:12.000000000 +0100
@@ -0,0 +1,89 @@
+<?xml version="1.0"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
https://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>foo</groupId>
+ <artifactId>bar</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ </properties>
+
+ <modules>
+ <module>processor</module>
+ <module>code</module>
+ </modules>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>@project.version@</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <encoding>UTF-8</encoding>
+ <showWarnings>true</showWarnings>
+ <showDeprecation>true</showDeprecation>
+ <fork>true</fork> <!-- Change this to false and the
Diagnostic.Kind.NOTE messages show up -->
+ <useIncrementalCompilation>false</useIncrementalCompilation>
+ <compilerArgs combine.children="append">
+ <arg>-Xlint:all,-processing</arg>
+ <arg>-Xdoclint:all,-missing,-accessibility</arg>
+ <arg>-Xmaxerrs</arg>
+ <arg>2147483647</arg>
+ <arg>-Xmaxwarns</arg>
+ <arg>2147483647</arg>
+ </compilerArgs>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <profiles>
+ <profile>
+ <id>java9</id>
+ <activation>
+ <jdk>[9,)</jdk>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <proc>full</proc>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/processor/pom.xml
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/processor/pom.xml
--- old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/processor/pom.xml
1970-01-01 01:00:00.000000000 +0100
+++ new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/processor/pom.xml
2026-01-27 00:09:12.000000000 +0100
@@ -0,0 +1,43 @@
+<?xml version="1.0"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
https://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>foo</groupId>
+ <artifactId>bar</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+ <version>1.0-SNAPSHOT</version>
+ <artifactId>processor</artifactId>
+ <packaging>jar</packaging>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <proc>none</proc>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/processor/src/main/java/foo/MyAnnotation.java
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/processor/src/main/java/foo/MyAnnotation.java
---
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/processor/src/main/java/foo/MyAnnotation.java
1970-01-01 01:00:00.000000000 +0100
+++
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/processor/src/main/java/foo/MyAnnotation.java
2026-01-27 00:09:12.000000000 +0100
@@ -0,0 +1,28 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package foo;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Retention(RetentionPolicy.SOURCE)
+@Target(ElementType.TYPE)
+public @interface MyAnnotation {}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/processor/src/main/java/foo/MyProcessor.java
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/processor/src/main/java/foo/MyProcessor.java
---
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/processor/src/main/java/foo/MyProcessor.java
1970-01-01 01:00:00.000000000 +0100
+++
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/processor/src/main/java/foo/MyProcessor.java
2026-01-27 00:09:12.000000000 +0100
@@ -0,0 +1,67 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package foo;
+
+import javax.annotation.processing.*;
+import javax.lang.model.SourceVersion;
+import javax.lang.model.element.TypeElement;
+import javax.tools.Diagnostic;
+import javax.tools.JavaFileObject;
+
+import java.io.IOException;
+import java.io.Writer;
+import java.util.Set;
+
+@SupportedAnnotationTypes("foo.MyAnnotation")
+public class MyProcessor extends AbstractProcessor {
+
+ private int procRun = 0;
+
+ @Override
+ public SourceVersion getSupportedSourceVersion() {
+ return SourceVersion.latestSupported();
+ }
+
+ @Override
+ public boolean process(Set<? extends TypeElement> annotations,
RoundEnvironment roundEnv) {
+ try {
+ generate(annotations, roundEnv);
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+
+ return false;
+ }
+
+ private void generate(Set<? extends TypeElement> annotations,
RoundEnvironment roundEnv) throws IOException {
+ Messager msg = processingEnv.getMessager();
+ msg.printMessage(Diagnostic.Kind.NOTE, String.format("[%d]: Hello
Info", procRun));
+ msg.printMessage(Diagnostic.Kind.WARNING, String.format("[%d]: Hello
Warning", procRun));
+ procRun++;
+
+ if (procRun > 1) {
+ return;
+ }
+
+ JavaFileObject file =
processingEnv.getFiler().createSourceFile("bar.MyGeneratedClass");
+ try (Writer writer = file.openWriter()) {
+ writer.write("package bar;\npublic class MyGeneratedClass {}");
+ }
+ }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/processor/src/main/resources/META-INF/services/javax.annotation.processing.Processor
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/processor/src/main/resources/META-INF/services/javax.annotation.processing.Processor
---
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-540/processor/src/main/resources/META-INF/services/javax.annotation.processing.Processor
1970-01-01 01:00:00.000000000 +0100
+++
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-540/processor/src/main/resources/META-INF/services/javax.annotation.processing.Processor
2026-01-27 00:09:12.000000000 +0100
@@ -0,0 +1,18 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+foo.MyProcessor
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-567-kt/pom.xml
new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-567-kt/pom.xml
--- old/maven-compiler-plugin-3.14.1/src/it/MCOMPILER-567-kt/pom.xml
2025-09-18 23:34:28.000000000 +0200
+++ new/maven-compiler-plugin-3.15.0/src/it/MCOMPILER-567-kt/pom.xml
2026-01-27 00:09:12.000000000 +0100
@@ -27,11 +27,15 @@
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
+ <properties>
+ <kotlin.compiler.daemon>false</kotlin.compiler.daemon>
+ </properties>
+
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib</artifactId>
- <version>1.9.21</version>
+ <version>2.2.20</version>
</dependency>
</dependencies>
@@ -41,7 +45,7 @@
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
- <version>1.9.21</version>
+ <version>2.2.20</version>
<executions>
<execution>
<id>compile</id>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/jdk16-annotation/pom.xml
new/maven-compiler-plugin-3.15.0/src/it/jdk16-annotation/pom.xml
--- old/maven-compiler-plugin-3.14.1/src/it/jdk16-annotation/pom.xml
2025-09-18 23:34:28.000000000 +0200
+++ new/maven-compiler-plugin-3.15.0/src/it/jdk16-annotation/pom.xml
2026-01-27 00:09:12.000000000 +0100
@@ -52,4 +52,30 @@
<scope>test</scope>
</dependency>
</dependencies>
+
+ <profiles>
+ <profile>
+ <id>jdk21</id>
+ <activation>
+ <jdk>[21,)</jdk>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>@project.version@</version>
+ <executions>
+ <execution>
+ <id>default-testCompile</id>
+ <configuration>
+ <proc>full</proc>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
</project>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/multirelease-patterns/multiproject/multirelease-base/pom.xml
new/maven-compiler-plugin-3.15.0/src/it/multirelease-patterns/multiproject/multirelease-base/pom.xml
---
old/maven-compiler-plugin-3.14.1/src/it/multirelease-patterns/multiproject/multirelease-base/pom.xml
2025-09-18 23:34:28.000000000 +0200
+++
new/maven-compiler-plugin-3.15.0/src/it/multirelease-patterns/multiproject/multirelease-base/pom.xml
2026-01-27 00:09:12.000000000 +0100
@@ -19,7 +19,7 @@
-->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
@@ -49,8 +49,7 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
- <source>1.8</source>
- <target>1.8</target>
+ <release>${base.java.version}</release>
</configuration>
</plugin>
</plugins>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/multirelease-patterns/multiproject/pom.xml
new/maven-compiler-plugin-3.15.0/src/it/multirelease-patterns/multiproject/pom.xml
---
old/maven-compiler-plugin-3.14.1/src/it/multirelease-patterns/multiproject/pom.xml
2025-09-18 23:34:28.000000000 +0200
+++
new/maven-compiler-plugin-3.15.0/src/it/multirelease-patterns/multiproject/pom.xml
2026-01-27 00:09:12.000000000 +0100
@@ -18,7 +18,7 @@
~ under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
@@ -34,6 +34,9 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>@project.version@</version>
+ <configuration>
+ <release>${base.java.version}</release>
+ </configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/multirelease-patterns/packaging-plugin/pom.xml
new/maven-compiler-plugin-3.15.0/src/it/multirelease-patterns/packaging-plugin/pom.xml
---
old/maven-compiler-plugin-3.14.1/src/it/multirelease-patterns/packaging-plugin/pom.xml
2025-09-18 23:34:28.000000000 +0200
+++
new/maven-compiler-plugin-3.15.0/src/it/multirelease-patterns/packaging-plugin/pom.xml
2026-01-27 00:09:12.000000000 +0100
@@ -18,7 +18,7 @@
~ under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>multirelease</groupId>
@@ -32,6 +32,17 @@
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>@project.version@</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
+ <!-- use version from parent for 3.x -->
+ <version>@version.maven-resources-plugin@</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>@version.maven-surefire@</version>
<configuration>
@@ -68,7 +79,7 @@
<configuration>
<includes>
<include>**/*Test.java</include>
- </includes>
+ </includes>
</configuration>
</plugin>
</plugins>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/it/multirelease-patterns/singleproject-toolchains/pom.xml
new/maven-compiler-plugin-3.15.0/src/it/multirelease-patterns/singleproject-toolchains/pom.xml
---
old/maven-compiler-plugin-3.14.1/src/it/multirelease-patterns/singleproject-toolchains/pom.xml
2025-09-18 23:34:28.000000000 +0200
+++
new/maven-compiler-plugin-3.15.0/src/it/multirelease-patterns/singleproject-toolchains/pom.xml
2026-01-27 00:09:12.000000000 +0100
@@ -18,7 +18,7 @@
~ under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
@@ -31,13 +31,22 @@
<properties>
<!-- The oldest Java version supported by this tool. -->
<!-- Will control compilation of the main code and the unit tests. -->
- <base.java.version>1.8</base.java.version>
+ <base.java.version>8</base.java.version>
<!-- set the property when running from the release plugin -->
<arguments>-Dmulti_release=true</arguments>
</properties>
<build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>@project.version@</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
<plugins>
<!-- Use toolchains to select the compilers -->
@@ -65,10 +74,8 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
- <version>@project.version@</version>
<configuration>
- <source>${base.java.version}</source>
- <target>${base.java.version}</target>
+ <release>${base.java.version}</release>
</configuration>
<executions>
<!-- for Java 9 -->
@@ -126,7 +133,7 @@
<configuration>
<includes>
<include>**/*Test.java</include>
- </includes>
+ </includes>
</configuration>
</plugin>
</plugins>
@@ -140,7 +147,7 @@
<scope>test</scope>
</dependency>
</dependencies>
-
+
<profiles>
<!-- enable java9 compilation -->
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/maven-compiler-plugin-3.14.1/src/it/settings.xml
new/maven-compiler-plugin-3.15.0/src/it/settings.xml
--- old/maven-compiler-plugin-3.14.1/src/it/settings.xml 2025-09-18
23:34:28.000000000 +0200
+++ new/maven-compiler-plugin-3.15.0/src/it/settings.xml 2026-01-27
00:09:12.000000000 +0100
@@ -37,17 +37,6 @@
<enabled>true</enabled>
</snapshots>
</repository>
- <repository>
- <releases>
- <enabled>false</enabled>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- <id>plexus-snapshots</id>
- <name>Plexus Snapshot Repository</name>
-
<url>https://oss.sonatype.org/content/repositories/plexus-snapshots</url>
- </repository>
</repositories>
<pluginRepositories>
<pluginRepository>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java
new/maven-compiler-plugin-3.15.0/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java
---
old/maven-compiler-plugin-3.14.1/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java
2025-09-18 23:34:28.000000000 +0200
+++
new/maven-compiler-plugin-3.15.0/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java
2026-01-27 00:09:12.000000000 +0100
@@ -1000,6 +1000,7 @@
return;
}
+ staleSources = filterSourceFiles(staleSources);
compilerConfiguration.setSourceFiles(staleSources);
try {
@@ -1887,6 +1888,17 @@
targetOrReleaseSet = true;
}
+ private Set<File> filterSourceFiles(Set<File> sourceFiles) {
+ final File generatedSources = getGeneratedSourcesDirectory();
+ if (generatedSources == null) {
+ return sourceFiles;
+ }
+ final String generatedSourcesPath = generatedSources.getAbsolutePath();
+ return sourceFiles.stream()
+ .filter(x ->
!x.getAbsolutePath().startsWith(generatedSourcesPath))
+ .collect(Collectors.toSet());
+ }
+
final String getImplicit() {
return implicit;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/test/java/org/apache/maven/plugin/compiler/CompilerMojoTest.java
new/maven-compiler-plugin-3.15.0/src/test/java/org/apache/maven/plugin/compiler/CompilerMojoTest.java
---
old/maven-compiler-plugin-3.14.1/src/test/java/org/apache/maven/plugin/compiler/CompilerMojoTest.java
2025-09-18 23:34:28.000000000 +0200
+++
new/maven-compiler-plugin-3.15.0/src/test/java/org/apache/maven/plugin/compiler/CompilerMojoTest.java
2026-01-27 00:09:12.000000000 +0100
@@ -20,23 +20,21 @@
import java.io.File;
import java.util.Arrays;
-import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
+import org.apache.maven.api.plugin.testing.InjectMojo;
+import org.apache.maven.api.plugin.testing.MojoTest;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.plugin.compiler.stubs.CompilerManagerStub;
import org.apache.maven.plugin.logging.Log;
-import org.apache.maven.plugin.testing.junit5.InjectMojo;
-import org.apache.maven.plugin.testing.junit5.MojoTest;
import org.apache.maven.plugin.testing.stubs.ArtifactStub;
import org.junit.jupiter.api.Test;
+import static
org.apache.maven.api.plugin.testing.MojoExtension.getVariableValueFromObject;
+import static
org.apache.maven.api.plugin.testing.MojoExtension.setVariableValueToObject;
import static
org.apache.maven.plugin.compiler.MojoTestUtils.getMockMavenProject;
import static
org.apache.maven.plugin.compiler.MojoTestUtils.getMockMavenSession;
-import static
org.apache.maven.plugin.compiler.MojoTestUtils.getMockMojoExecution;
-import static
org.apache.maven.plugin.compiler.MojoTestUtils.getVariableValueFromObject;
-import static
org.apache.maven.plugin.compiler.MojoTestUtils.setVariableValueToObject;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertNotNull;
@@ -70,7 +68,7 @@
setVariableValueToObject(compilerMojo, "targetOrReleaseSet", false);
compilerMojo.execute();
- Artifact projectArtifact = getVariableValueFromObject(compilerMojo,
"projectArtifact");
+ Artifact projectArtifact = (Artifact)
getVariableValueFromObject(compilerMojo, "projectArtifact");
assertNotNull(
projectArtifact.getFile(),
"MCOMPILER-94: artifact file should only be null if there is
nothing to compile");
@@ -110,7 +108,7 @@
assertFalse(compilerMojo.getOutputDirectory().exists());
- Artifact projectArtifact = getVariableValueFromObject(compilerMojo,
"projectArtifact");
+ Artifact projectArtifact = (Artifact)
getVariableValueFromObject(compilerMojo, "projectArtifact");
assertNull(
projectArtifact.getFile(), "MCOMPILER-94: artifact file should
be null if there is nothing to compile");
}
@@ -296,11 +294,7 @@
private void setUpCompilerMojoTestEnv(CompilerMojo mojo) throws Exception {
setVariableValueToObject(mojo, "projectArtifact", new ArtifactStub());
- setVariableValueToObject(mojo, "compilePath", Collections.EMPTY_LIST);
setVariableValueToObject(mojo, "session", getMockMavenSession());
setVariableValueToObject(mojo, "project", getMockMavenProject());
- setVariableValueToObject(mojo, "mojoExecution",
getMockMojoExecution());
- setVariableValueToObject(mojo, "source",
AbstractCompilerMojo.DEFAULT_SOURCE);
- setVariableValueToObject(mojo, "target",
AbstractCompilerMojo.DEFAULT_TARGET);
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/test/java/org/apache/maven/plugin/compiler/MojoTestUtils.java
new/maven-compiler-plugin-3.15.0/src/test/java/org/apache/maven/plugin/compiler/MojoTestUtils.java
---
old/maven-compiler-plugin-3.14.1/src/test/java/org/apache/maven/plugin/compiler/MojoTestUtils.java
2025-09-18 23:34:28.000000000 +0200
+++
new/maven-compiler-plugin-3.15.0/src/test/java/org/apache/maven/plugin/compiler/MojoTestUtils.java
2026-01-27 00:09:12.000000000 +0100
@@ -18,33 +18,14 @@
*/
package org.apache.maven.plugin.compiler;
-import java.lang.reflect.Field;
-
import org.apache.maven.execution.MavenSession;
-import org.apache.maven.plugin.MojoExecution;
-import org.apache.maven.plugin.descriptor.MojoDescriptor;
-import org.apache.maven.plugin.descriptor.PluginDescriptor;
import org.apache.maven.project.MavenProject;
-import org.codehaus.plexus.util.ReflectionUtils;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
public class MojoTestUtils {
- public static <T> T getVariableValueFromObject(Object object, String
variable) throws IllegalAccessException {
- Field field =
ReflectionUtils.getFieldByNameIncludingSuperclasses(variable,
object.getClass());
- field.setAccessible(true);
- return (T) field.get(object);
- }
-
- public static <T> void setVariableValueToObject(Object object, String
variable, T value)
- throws IllegalAccessException {
- Field field =
ReflectionUtils.getFieldByNameIncludingSuperclasses(variable,
object.getClass());
- field.setAccessible(true);
- field.set(object, value);
- }
-
public static MavenProject getMockMavenProject() {
MavenProject mp = new MavenProject();
mp.getBuild().setDirectory("target");
@@ -61,15 +42,4 @@
when(session.getCurrentProject()).thenReturn(getMockMavenProject());
return session;
}
-
- public static MojoExecution getMockMojoExecution() {
- MojoDescriptor md = new MojoDescriptor();
- MojoExecution me = new MojoExecution(md);
-
- PluginDescriptor pd = new PluginDescriptor();
- pd.setArtifactId("maven-compiler-plugin");
- md.setPluginDescriptor(pd);
-
- return me;
- }
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/test/java/org/apache/maven/plugin/compiler/TestCompilerMojoTest.java
new/maven-compiler-plugin-3.15.0/src/test/java/org/apache/maven/plugin/compiler/TestCompilerMojoTest.java
---
old/maven-compiler-plugin-3.14.1/src/test/java/org/apache/maven/plugin/compiler/TestCompilerMojoTest.java
2025-09-18 23:34:28.000000000 +0200
+++
new/maven-compiler-plugin-3.15.0/src/test/java/org/apache/maven/plugin/compiler/TestCompilerMojoTest.java
2026-01-27 00:09:12.000000000 +0100
@@ -26,19 +26,18 @@
import java.util.Set;
import java.util.stream.Stream;
+import org.apache.maven.api.plugin.testing.InjectMojo;
+import org.apache.maven.api.plugin.testing.MojoTest;
import org.apache.maven.plugin.compiler.stubs.CompilerManagerStub;
-import org.apache.maven.plugin.testing.junit5.InjectMojo;
-import org.apache.maven.plugin.testing.junit5.MojoTest;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.Arguments;
import org.junit.jupiter.params.provider.MethodSource;
+import static
org.apache.maven.api.plugin.testing.MojoExtension.getVariableValueFromObject;
+import static
org.apache.maven.api.plugin.testing.MojoExtension.setVariableValueToObject;
import static
org.apache.maven.plugin.compiler.MojoTestUtils.getMockMavenProject;
import static
org.apache.maven.plugin.compiler.MojoTestUtils.getMockMavenSession;
-import static
org.apache.maven.plugin.compiler.MojoTestUtils.getMockMojoExecution;
-import static
org.apache.maven.plugin.compiler.MojoTestUtils.getVariableValueFromObject;
-import static
org.apache.maven.plugin.compiler.MojoTestUtils.setVariableValueToObject;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -171,7 +170,7 @@
}
private void setUpCompilerMojoTestEnv(TestCompilerMojo mojo) throws
Exception {
- File buildDir = getVariableValueFromObject(mojo, "buildDirectory");
+ File buildDir = (File) getVariableValueFromObject(mojo,
"buildDirectory");
File testClassesDir = new File(buildDir, "test-classes");
setVariableValueToObject(mojo, "outputDirectory", testClassesDir);
@@ -188,9 +187,6 @@
setVariableValueToObject(mojo, "compileSourceRoots",
Arrays.asList(sourceRoot, testSourceRoot));
setVariableValueToObject(mojo, "session", getMockMavenSession());
- setVariableValueToObject(mojo, "mojoExecution",
getMockMojoExecution());
- setVariableValueToObject(mojo, "source",
AbstractCompilerMojo.DEFAULT_SOURCE);
- setVariableValueToObject(mojo, "target",
AbstractCompilerMojo.DEFAULT_TARGET);
}
static Stream<Arguments> olderThanJDK9() {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/test/java/org/apache/maven/plugin/compiler/stubs/DebugEnabledLog.java
new/maven-compiler-plugin-3.15.0/src/test/java/org/apache/maven/plugin/compiler/stubs/DebugEnabledLog.java
---
old/maven-compiler-plugin-3.14.1/src/test/java/org/apache/maven/plugin/compiler/stubs/DebugEnabledLog.java
2025-09-18 23:34:28.000000000 +0200
+++
new/maven-compiler-plugin-3.15.0/src/test/java/org/apache/maven/plugin/compiler/stubs/DebugEnabledLog.java
1970-01-01 01:00:00.000000000 +0100
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.maven.plugin.compiler.stubs;
-
-import org.apache.maven.plugin.logging.SystemStreamLog;
-
-/**
- * @author Edwin Punzalan
- */
-public class DebugEnabledLog extends SystemStreamLog {
- public DebugEnabledLog() {
- super();
- }
-
- public boolean isDebugEnabled() {
- return true;
- }
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/maven-compiler-plugin-3.14.1/src/test/resources/unit/compiler-basic-sourcetarget/plugin-config.xml
new/maven-compiler-plugin-3.15.0/src/test/resources/unit/compiler-basic-sourcetarget/plugin-config.xml
---
old/maven-compiler-plugin-3.14.1/src/test/resources/unit/compiler-basic-sourcetarget/plugin-config.xml
2025-09-18 23:34:28.000000000 +0200
+++
new/maven-compiler-plugin-3.15.0/src/test/resources/unit/compiler-basic-sourcetarget/plugin-config.xml
2026-01-27 00:09:12.000000000 +0100
@@ -30,8 +30,8 @@
<debug>true</debug>
<outputDirectory>${basedir}/target/test/unit/compiler-basic-test/target/classes</outputDirectory>
<buildDirectory>${basedir}/target/test/unit/compiler-basic-test/target</buildDirectory>
- <source>1.6</source>
- <target>1.6</target>
+ <source>1.8</source>
+ <target>1.8</target>
</configuration>
</plugin>
</plugins>
++++++ maven-compiler-plugin-bootstrap-resources.patch ++++++
--- /var/tmp/diff_new_pack.tWpy4R/_old 2026-02-02 14:58:59.404144582 +0100
+++ /var/tmp/diff_new_pack.tWpy4R/_new 2026-02-02 14:58:59.408144750 +0100
@@ -1,5 +1,5 @@
----
maven-compiler-plugin-3.14.1/src/main/filtered-resources/META-INF/maven/org.apache.maven.plugins/maven-compiler-plugin/plugin-help.xml
1970-01-01 01:00:00.000000000 +0100
-+++
maven-compiler-plugin-3.14.1/src/main/filtered-resources/META-INF/maven/org.apache.maven.plugins/maven-compiler-plugin/plugin-help.xml
2025-09-21 13:30:11.742960611 +0200
+---
a/src/main/filtered-resources/META-INF/maven/org.apache.maven.plugins/maven-compiler-plugin/plugin-help.xml
1970-01-01 01:00:00.000000000 +0100
++++
b/src/main/filtered-resources/META-INF/maven/org.apache.maven.plugins/maven-compiler-plugin/plugin-help.xml
2026-01-27 05:28:22.464378642 +0100
@@ -0,0 +1,1195 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
@@ -563,7 +563,7 @@
+ </mojo>
+ <mojo>
+ <goal>help</goal>
-+ <description>Display help information on maven-compiler-plugin.
++ <description>Display help information on maven-compiler-plugin.
+Call mvn compiler:help -Ddetail=true -Dgoal=<goal-name> to display
parameter details.</description>
+ <requiresDirectInvocation>false</requiresDirectInvocation>
+ <requiresProject>false</requiresProject>
@@ -1196,8 +1196,8 @@
+ </mojo>
+ </mojos>
+</plugin>
----
maven-compiler-plugin-3.14.1/src/main/filtered-resources/META-INF/maven/plugin.xml
1970-01-01 01:00:00.000000000 +0100
-+++
maven-compiler-plugin-3.14.1/src/main/filtered-resources/META-INF/maven/plugin.xml
2025-09-21 13:31:52.102781401 +0200
+--- a/src/main/filtered-resources/META-INF/maven/plugin.xml 1970-01-01
01:00:00.000000000 +0100
++++ b/src/main/filtered-resources/META-INF/maven/plugin.xml 2026-01-27
05:29:04.832663353 +0100
@@ -0,0 +1,1415 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
@@ -1840,7 +1840,7 @@
+ </mojo>
+ <mojo>
+ <goal>help</goal>
-+ <description>Display help information on maven-compiler-plugin.
++ <description>Display help information on maven-compiler-plugin.
+Call mvn compiler:help -Ddetail=true -Dgoal=<goal-name> to display
parameter details.</description>
+ <requiresDirectInvocation>false</requiresDirectInvocation>
+ <requiresProject>false</requiresProject>
@@ -2541,22 +2541,22 @@
+ </mojos>
+ <dependencies>
+ <dependency>
-+ <groupId>org.slf4j</groupId>
-+ <artifactId>slf4j-api</artifactId>
-+ <type>jar</type>
-+ <version>1.7.36</version>
-+ </dependency>
-+ <dependency>
+ <groupId>javax.inject</groupId>
+ <artifactId>javax.inject</artifactId>
+ <type>jar</type>
+ <version>1</version>
+ </dependency>
+ <dependency>
++ <groupId>org.slf4j</groupId>
++ <artifactId>slf4j-api</artifactId>
++ <type>jar</type>
++ <version>1.7.36</version>
++ </dependency>
++ <dependency>
+ <groupId>org.ow2.asm</groupId>
+ <artifactId>asm</artifactId>
+ <type>jar</type>
-+ <version>9.8</version>
++ <version>9.9.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.maven.shared</groupId>
@@ -2580,7 +2580,7 @@
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-java</artifactId>
+ <type>jar</type>
-+ <version>1.5.0</version>
++ <version>1.5.2</version>
+ </dependency>
+ <dependency>
+ <groupId>com.thoughtworks.qdox</groupId>
@@ -2592,30 +2592,30 @@
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-compiler-api</artifactId>
+ <type>jar</type>
-+ <version>2.15.0</version>
++ <version>2.16.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-compiler-manager</artifactId>
+ <type>jar</type>
-+ <version>2.15.0</version>
++ <version>2.16.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-compiler-javac</artifactId>
+ <type>jar</type>
-+ <version>2.15.0</version>
++ <version>2.16.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-utils</artifactId>
+ <type>jar</type>
-+ <version>4.0.1</version>
++ <version>4.0.2</version>
+ </dependency>
+ </dependencies>
+</plugin>
----
maven-compiler-plugin-3.14.1/src/main/java/org/apache/maven/plugins/maven_compiler_plugin/HelpMojo.java
1970-01-01 01:00:00.000000000 +0100
-+++
maven-compiler-plugin-3.14.1/src/main/java/org/apache/maven/plugins/maven_compiler_plugin/HelpMojo.java
2025-09-21 13:28:25.168614657 +0200
+---
a/src/main/java/org/apache/maven/plugins/maven_compiler_plugin/HelpMojo.java
1970-01-01 01:00:00.000000000 +0100
++++
b/src/main/java/org/apache/maven/plugins/maven_compiler_plugin/HelpMojo.java
2026-01-27 05:26:32.025986195 +0100
@@ -0,0 +1,448 @@
+package org.apache.maven.plugins.maven_compiler_plugin;
+
++++++ maven-compiler-plugin-build.xml ++++++
--- /var/tmp/diff_new_pack.tWpy4R/_old 2026-02-02 14:58:59.448146441 +0100
+++ /var/tmp/diff_new_pack.tWpy4R/_new 2026-02-02 14:58:59.456146779 +0100
@@ -14,10 +14,10 @@
value="The Compiler Plugin is used to compile the sources of your
project."/>
<property name="project.groupId" value="org.apache.maven.plugins"/>
<property name="project.artifactId" value="maven-compiler-plugin"/>
- <property name="project.version" value="3.14.1"/>
+ <property name="project.version" value="3.15.0"/>
<property name="project.organization.name" value="The Apache Software
Foundation"/>
- <property name="spec.version" value="3.14"/>
+ <property name="spec.version" value="3.15"/>
<property name="compiler.release" value="8"/>
<property name="compiler.source" value="1.${compiler.release}"/>