<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<p>Hey Manuel,</p>
<p>This looks like a strange error. I do not recognize it. The jawt
header files are from java.desktop, and the jaxp.properties file
is from java.xml. So, they should not be in jdk.compiler and
jdk.internal.opt</p>
<p>If you list the contents of the jdk.compiler and jdk.internal.opt
jmod files (using jmod list), are these resources listed?</p>
<p>Jorn<br>
</p>
<div class="moz-cite-prefix">On 25/07/2023 21:44, Manuel
Bleichenbacher wrote:<br>
</div>
<blockquote type="cite" cite="mid:CAA7F5j+dCJTNw54US0wqXFTfwejOUhzebS7GCigfz2+wWpcs3g@mail.gmail.com">
<div dir="ltr">As part of upgrading <a href="https://github.com/manuelbl/JavaDoesUSB" moz-do-not-send="true" class="moz-txt-link-freetext">https://github.com/manuelbl/JavaDoesUSB</a>
to JDK 21, I'm building jextract for JDK 21. It works without
issue on Linux and Windows. But on macOS it fails with this
error message:
<div><br>
</div>
<div>
<p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;font-size-adjust:none;font-kerning:auto;font-variant-alternates:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-east-asian:normal;font-feature-settings:normal;color:rgb(180,36,25)"><span style="font-variant-ligatures:no-common-ligatures"><b>>
Task :createJextractImage</b> FAILED</span></p>
<p style="margin:0px;font-stretch:normal;font-size:11px;line-height:normal;font-family:Menlo;font-size-adjust:none;font-kerning:auto;font-variant-alternates:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-east-asian:normal;font-feature-settings:normal;color:rgb(0,0,0)"><span style="font-variant-ligatures:no-common-ligatures">Error:
jdk.tools.jlink.plugin.PluginException: Duplicate
resources: {include/darwin/jawt_md.h=[jdk.compiler,
jdk.internal.opt], conf/jaxp.properties=[jdk.compiler,
jdk.internal.opt], include/jawt.h=[jdk.compiler,
jdk.internal.opt]}</span></p>
<br class="gmail-Apple-interchange-newline">
</div>
<div>From my limited understanding of jlink, I think one of the
explicitly specified modules has a transitive dependency to
the module "jdk.internal.opt", so it's included as well. But
the modules "jdk.compiler" and "jdk.internal.opt" have three
common files, which are now in conflict.</div>
<div><br>
</div>
<div>Is this a known issue? Is there a workaround?</div>
<div><br>
</div>
<div>My environment is:</div>
<div>- JDK for gradle: <span style="color:rgb(0,0,0);font-family:Menlo;font-size:11px">openjdk
version "17.0.1" 2021-10-19 LTS</span></div>
- JDK 21: <span style="color:rgb(0,0,0);font-family:Menlo;font-size:11px">OpenJDK
64-Bit Server VM Zulu21+69-CA (build 21-ea+28, mixed mode,
sharing)</span>
<div>- jextract: head of "jdk21" branch</div>
<div>- Command line: <span style="color:rgb(0,0,0);font-family:Menlo;font-size:11px">sh
./gradlew
-Pjdk21_home=/Users/me/Documents/zulu21.0.69-ea-jdk21.0.0-ea.28-macosx_aarch64
-Pllvm_home=/Library/Developer/CommandLineTools/usr/ clean
verify</span></div>
<div><br>
</div>
</div>
</blockquote>
</body>
</html>