[
https://issues.apache.org/jira/browse/MENFORCER-473?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17701012#comment-17701012
]
Tamas Cservenak commented on MENFORCER-473:
-------------------------------------------
This is current limitation with bundled Sisu in Maven (version 0.3.5): it is
old, and uses old ASM, so *only Java 11 bytecode is supported* currently, as
Sisu needs to introspect classes, the index file only tells which classes to
look at. For any component that should run within Maven (so using provided Sisu
container) the bytecode must not go beyond Java 11.
> Custom Rules are not processed with Java 17
> -------------------------------------------
>
> Key: MENFORCER-473
> URL: https://issues.apache.org/jira/browse/MENFORCER-473
> Project: Maven Enforcer Plugin
> Issue Type: Bug
> Components: externalRules, Plugin, Rule API
> Affects Versions: 3.2.1
> Environment: Windows, Java 17
> Reporter: Nils Christian Ehmke
> Priority: Major
>
> Hi,
> We noticed that our custom rule, using the newer API (as documented
> [here)|https://maven.apache.org/enforcer/enforcer-api/writing-a-custom-rule.html]
> is not processed using Java 17.
> We created a sample project using the custom rule example. Once we use Java
> 17 in the pom.xml it breaks.
> {code:java}
> <properties>
> <api.version>3.2.1</api.version>
> <maven.version>3.9.0</maven.version>
> <!-- use JDK 1.8 at least -->
> <maven.compiler.source>17</maven.compiler.source>
> <maven.compiler.target>17</maven.compiler.target>
> </properties>
> ...
> <plugin>
> <groupId>org.apache.maven.plugins</groupId>
> <artifactId>maven-compiler-plugin</artifactId>
> <version>3.11.0</version>
> </plugin>
> <plugin>
> <!-- generate index of project components -->
> <groupId>org.eclipse.sisu</groupId>
> <artifactId>sisu-maven-plugin</artifactId>
> <version>0.9.0.M1</version>
> <executions>
> <execution>
> <goals>
> <goal>main-index</goal>
> </goals>
> </execution>
> </executions>
> </plugin>
> {code}
> If we compile the custom rule and verify the using project, we get
> {code}
> [ERROR] Failed to execute goal
> org.apache.maven.plugins:maven-enforcer-plugin:3.2.1:enforce (enforce) on
> project maven-enforcer-plugin-sample-usage: Execution enforce of goal
> org.apache.maven.plugins:maven-enforcer-plugin:3.2.1:enforce failed: Failed
> to create enforcer rules with name: myCustomRule or for class:
> org.apache.maven.plugins.enforcer.MyCustomRule -> [Help 1]
> {code}
> The index file itself looks good, so something else within the plugin or Sisu
> Plexus seems to break.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)