apache / apache/maven-jmod-plugin
Plugin is not compatible with JDKs (like temurin) which support changes of JEP 493 (do not include jmods folder)
- Dominant language
- Java
- Stars
- 16
- Forks
- 11
- Avg merge
- 7h 10m
- Merged PRs (30d)
- 1
Description
### Affected version
3.0.0-SNAPSHOT (current master)
### Bug description
Due the changes of JEP 493 (Java 24) some JDK, for example Temurin, do not ship a JMOD folder anymore. The plugin relies on this folder.
---------------------
Old description
All IT are failing on master
(win 11, Java 25, with Admin rights)
```
D:\Github\Maven\maven-jmod-plugin>mvn -V
Apache Maven 4.0.0-rc-5 (fb3ecaef88106acb40467a450248dfdbd75f3b35)
Maven home: C:\apache-maven-4.0.0-rc-5
Java version: 25, vendor: Eclipse Adoptium, runtime: C:\JDK\Java25
Default locale: de_DE, platform encoding: UTF-8
OS name: "windows 11", version: "10.0", arch: "amd64", family: "winnt"
```
```
[ERROR]
[INFO] -------------------------------------------------
[INFO] Build Summary:
[INFO] Passed: 0, Failed: 18, Errors: 0, Skipped: 0
[INFO] -------------------------------------------------
[ERROR] The following builds failed:
[ERROR] * base-config-cmds\pom.xml
[ERROR] * base-config-headerfiles\pom.xml
[ERROR] * base-config-legalnotices\pom.xml
[ERROR] * base-config-libs\pom.xml
[ERROR] * base-config\pom.xml
[ERROR] * base-it\pom.xml
[ERROR] * describe-base-config\pom.xml
[ERROR] * describe-plain\pom.xml
[ERROR] * list-base-config\pom.xml
[ERROR] * list-plain\pom.xml
[ERROR] * mjmod-20-set-main-class\pom.xml
[ERROR] * mjmod-23-path-must-be-dir\pom.xml
[ERROR] * mjmod-8-generate-jmod-in-other-project\pom.xml
[ERROR] * non-default-config-cmds\pom.xml
[ERROR] * non-default-config-headerfiles\pom.xml
[ERROR] * non-default-config-legalnotices\pom.xml
[ERROR] * non-default-config-libs\pom.xml
[ERROR] * non-default-config\pom.xml
```
Most seen errors
```
assert artifact.isFile()
| |
| false
assert listLines == resourceNames
| | |
[] | ['conf/config.test', 'classes/module-info.class', 'classes/myproject/HelloWorld.class']
false
assert expectedDescriptorLines == describeLines
| | |
| | []
| false
['org.apache.maven.plugins.jmod.it.first@99.0', 'exports myproject', 'requires java.base']
[INFO] java.lang.AssertionError: target file is missing or a directory.. Expression: (artifact.exists() && artifact.isFile())
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by running the integration tests listed in the issue and inspect where the plugin assumes that the JDK contains a jmods folder. Compare the behavior with a Temurin JDK affected by JEP 493. Done means the reported integration tests pass and the missing-artifact, resource-list, and descriptor assertions succeed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100