<div dir="ltr"><div>Hi Alexey,</div><div><br></div><div>Thank you for your reply.</div><div><br></div><div class="gmail_quote gmail_quote_container"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>Does the warning message resembles the one at [1]?<br></div></blockquote><div><br></div><div>Yes, exactly.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>
    I think your evaluation that the step 1 failed is correct. I'd
    suggest adding "--verbose" option to the step 1 command line to get
    more details.<br></div></blockquote><div><br></div><div>I updated a demo/test project to demonstrate the problem. You can now also try it yourself.</div><div><a href="https://github.com/danielpeintner/Java11Test/tree/non-modular">https://github.com/danielpeintner/Java11Test/tree/non-modular</a></div><div><br></div><div>There you can also find the 3 jpackage commands I use</div><div></div><div><a href="https://github.com/danielpeintner/Java11Test/blob/fdefe61e7e99747d6a62ac4b0a778fb0151b22e4/build.gradle#L148-L151">https://github.com/danielpeintner/Java11Test/blob/fdefe61e7e99747d6a62ac4b0a778fb0151b22e4/build.gradle#L148-L151</a></div><div><br></div><div>W.r.t. sharing the logs file. I will send them to you *privately*. I quickly scanned them and I would rather not have them on the reflector.</div><div><br></div><div>The weird thing is, that the difference seems to happen in step 1. Anyhow, running these commands the difference is also somehow in step 2 where</div><div>* JDK21 makes popping up a dialog which asks me whether I want to allow access to my keys</div><div>* JDK25 does not need any interaction</div><div><br></div><div>I hope this helps to find the "difference".</div><div><br></div><div>Thanks,</div><div><br></div><div>-- Daniel</div><div><br></div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>
    <br>
    [1]
<a href="https://github.com/openjdk/jdk/blob/4c6af03f81e068a98b8f4628b96682a54f3946da/src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources_de.properties#L85" target="_blank">https://github.com/openjdk/jdk/blob/4c6af03f81e068a98b8f4628b96682a54f3946da/src/jdk.jpackage/macosx/classes/jdk/jpackage/internal/resources/MacResources_de.properties#L85</a><br>
    <br>
    - Alexey<br>
    <br>
    <div>On 11/4/2025 12:32 PM, Daniel Peintner
      wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="ltr">
        <div>
          Hi Alexey, all,</div>
        <div><br>
        </div>
        <div>I nailed down the problem to the following, which seems to
          differ between JDK25 and JDK21.</div>
        <div>Maybe this helps to reproduce the issue.</div>
        <div><br>
        </div>
        <div>jpackage is called 3 times in my process</div>
        <div>
          <ol>
            <li>/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home/bin/jpackage
              --type app-image --input
              /Users/daniel/Documents/GitHub/myPROJECT/build/install/myPROJECT/lib
              --main-jar myPROJECT-25.11.03.jar --main-class
              eu.my_company.myproject.Launcher --dest
              /Users/daniel/Documents/GitHub/myPROJECT/build/jpackage
              --name myPROJECT --app-version 25.11.03 --runtime-image
              /Users/daniel/Documents/GitHub/myPROJECT/build/jre
              --java-options
              --add-opens=javafx.base/com.sun.javafx.collections=ALL-UNNAMED
              --java-options
              --add-opens=javafx.base/com.sun.javafx.event=ALL-UNNAMED
              --java-options
              --add-opens=javafx.controls/com.sun.javafx.scene.control=ALL-UNNAMED
              --java-options
--add-opens=javafx.controls/com.sun.javafx.scene.control.behavior=ALL-UNNAMED
              --java-options
              --add-opens=javafx.controls/javafx.scene.control.skin=ALL-UNNAMED
              --java-options
              --add-exports=java.management/javax.management=ALL-UNNAMED
              --java-options
              --add-opens=java.xml/com.sun.org.apache.xerces.internal.util=ALL-UNNAMED
              --java-options
              --add-opens=javafx.graphics/com.sun.glass.ui=ALL-UNNAMED
              --icon src/main/deploy/package/macosx/myPROJECT.icns
              --mac-package-identifier eu.my-company.myproject
              --mac-sign<br>
              <br>
            </li>
            <li>/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home/bin/jpackage
              --type pkg --dest
              /Users/daniel/Documents/GitHub/myPROJECT/build/jpackage
              --name myPROJECT --app-version 25.11.03 --app-image
              /Users/daniel/Documents/GitHub/myPROJECT/build/jpackage/myPROJECT.app
              --file-associations
              src/main/resources/associations.properties --app-version
              25.11.03 --vendor "My Company" --copyright "My Company"
              --mac-sign<br>
              <br>
            </li>
            <li>/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home/bin/jpackage
              --type dmg --dest
              /Users/daniel/Documents/GitHub/myPROJECT/build/jpackage
              --name myPROJECT --app-version 25.11.03 --app-image
              /Users/daniel/Documents/GitHub/myPROJECT/build/jpackage/myPROJECT.app
              --file-associations
              src/main/resources/associations.properties --app-version
              25.11.03 --vendor "My Company" --copyright "My Company"
              --mac-sign</li>
          </ol>
          <div><br>
          </div>
          <div>First it creates the app-image and afterwards it creates
            pkg and dmg and signs it.</div>
          <div><br>
          </div>
          As you can see in the 3 commands, it uses JDK21.<br>
          Once I change "jdk-21.jdk" with "jdk-25.jdk" it warns after
          step 2 already with the following message in German<br>
          <br>
          Warnung: Nicht signiertes app-image wird zum Erstellen von
          signiertem pkg verwendet.</div>
        <div>
          <div><br>
          </div>
          <div>It translates to something like: it tries to sign pkg and
            complains that the app-image is not signed.</div>
          <div>Hence, somehow step 1 failed already but does not show
            any error/warning.</div>
          <div><br>
          </div>
          <div>Please let me know whether the above helps to reproduce
            the issue.</div>
          <div><br>
          </div>
          <div>Thanks,</div>
          <div><br>
          </div>
          <div>-- Daniel</div>
          <div><br>
          </div>
        </div>
        <div><br>
        </div>
      </div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr" class="gmail_attr">On Tue, Nov 4, 2025 at 4:01 PM
          Daniel Peintner <<a href="mailto:daniel.peintner@gmail.com" target="_blank">daniel.peintner@gmail.com</a>>
          wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <div dir="ltr">
            <div>Hi Alexey,</div>
            <div><br>
            </div>
            <div>Thank you for your reply.</div>
            <div>I am using the badass runtime plugin which calls
              jpackage under the hood.</div>
            <div><br>
            </div>
            <div>While trying to create an example project, I noticed
              that there were some changes </div>
            <div>'--mac-package-identifier' needs to go
              into imageOptions and not installerOptions.</div>
            <div>see <a href="https://urldefense.com/v3/__https://github.com/danielpeintner/Java11Test/commit/742fce0d9e2995554829b6f199f22f0b22a5d385__;!!ACWV5N9M2RV99hQ!PyybrFqsPzI4Zo0L-pavG2mZkHToVTLkE6V8ezQdZYV20QXukxrjgODsksKVmoxUVoJW9hQTe2Z1vC1xwikUQGK-K4xefEo$" target="_blank">https://github.com/danielpeintner/Java11Test/commit/742fce0d9e2995554829b6f199f22f0b22a5d385</a></div>
            <div><br>
            </div>
            <div>That fixed the problem with jpackage. Anyhow, it still
              does not work with JDK25 and macOS signing.</div>
            <div>Using the JDK25 seems to need additional options
              (compared to JDK21).</div>
            <div><br>
            </div>
            <div>With JDK25 and --mac-sign the process no longer opens
              the KeyChain access and asks for the credentials. Hence,
              the image itself is no longer signed which matches with
              what I see on the debug console</div>
            <div>"non signed app-image used to sign dmg"  ... freely
              translated into English since I see the German version
              only</div>
            <div><br>
            </div>
            <div>Therefore, apple's notary service says invalid with the
              logs like "The binary is not signed with a valid Developer
              ID certificate".</div>
            <div><br>
            </div>
            <div>Using the *same* gradle file, switching to JDK21 works
              without any issues again.</div>
            <div>I will try to investigate further.</div>
            <div><br>
            </div>
            <div>Thanks,</div>
            <div><br>
            </div>
            <div>-- Daniel</div>
            <div><br>
            </div>
            <div><br>
            </div>
            <div><br>
            </div>
            <div><br>
            </div>
            <div class="gmail_quote">
              <div dir="ltr" class="gmail_attr">On Mon, Nov 3, 2025 at
                7:30 PM Alexey Semenyuk <<a href="mailto:alexey.semenyuk@oracle.com" target="_blank">alexey.semenyuk@oracle.com</a>>
                wrote:<br>
              </div>
              <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
                <div> Hi Daniel,<br>
                  <br>
                  I can not reproduce the issue you experience with
                  jdk25.0.1:<br>
                  <br>
                  ---<br>
                  $ ~/jdk-25.0.1.jdk/Contents/Home/bin/jpackage --input
                  input --dest output --type app-image --main-jar
                  hello.jar --main-class com.my_domain.project.Hello
                  --mac-package-identifier com.my-domain.project<br>
                  $ echo $?<br>
                  0<br>
                  ---<br>
                  <br>
                  If I run the same command line without `
                  --mac-package-identifier` option it fails as expected:<br>
                  ---<br>
                  $ ~/jdk-25.0.1.jdk/Contents/Home/bin/jpackage --input
                  input --dest output --type app-image --main-jar
                  hello.jar --main-class com.my_domain.project.Hello<br>
                  Bundler Mac Application Image skipped because of a
                  configuration problem: invalid mac bundle identifier
                  [com.my_domain.project].<br>
                  Advice to fix: specify identifier with
                  "--mac-package-identifier".<br>
                  ---<br>
                  <br>
                  The same failure for `--mac-package-identifier
                  com.my_domain.project` (with the underscore):<br>
                  ---<br>
                  $ ~/jdk-25.0.1.jdk/Contents/Home/bin/jpackage --input
                  input --dest output --type app-image --main-jar
                  hello.jar --main-class com.my_domain.project.Hello
                  --mac-package-identifier com.my_domain.project<br>
                  Bundler Mac Application Image skipped because of a
                  configuration problem: invalid mac bundle identifier
                  [com.my_domain.project].<br>
                  Advice to fix: specify identifier with
                  "--mac-package-identifier".<br>
                  ---<br>
                  <br>
                  Any chance you accidentally put the string with the
                  underscore instead of the hyphen as a value of the
                  `--mac-package-identifier` option on your command
                  line?<br>
                  <br>
                  - Alexey<br>
                  <br>
                  <div>On 11/3/2025 11:43 AM, Daniel Peintner wrote:<br>
                  </div>
                  <blockquote type="cite">
                    <div dir="ltr">Hi,<br>
                      <br>
                      I am about to switch a JavaFX project from JDK21
                      to JDK25 and I noticed a problem when running
                      jpackage.<br>
                      <br>
                      My domain has a hyphen, like in <a href="https://urldefense.com/v3/__http://www.my-domain.com__;!!ACWV5N9M2RV99hQ!PyybrFqsPzI4Zo0L-pavG2mZkHToVTLkE6V8ezQdZYV20QXukxrjgODsksKVmoxUVoJW9hQTe2Z1vC1xwikUQGK-KS5-g-8$" target="_blank">www.my-domain.com</a><br>
                      Hence, my Java package reads like this:
                      com.my_domain.project<br>
                      Note: hyphen becomes underscore.<br>
                      <br>
                      Running vanilla jpackage in JDK21 complained with<br>
                      Invalid Mac-Bundle-ID [com.my_domain.project]<br>
                      <div>due to the *invalid* underscore and suggests
                        me to use "--mac-package-identifier"</div>
                      <div><br>
                      </div>
                      <div>Hence, I added --mac-package-identifier
                        com.my-domain.project (with the hyphen again)</div>
                      <div>All good so far.</div>
                      <div><br>
                      </div>
                      <div>Running the same code with JDK25 with the
                        above settings shows the error message again</div>
                      <div> Invalid Mac-Bundle-ID
                        [com.my_domain.project] </div>
                      <div><br>
                      </div>
                      <div>I can add any argument to 
                        --mac-package-identifier</div>
                      <div>It seems it is simply not taken into account.</div>
                      <div><br>
                      </div>
                      <div>I am using JDK 25.0.1</div>
                      <div><br>
                      </div>
                      <div>Is this a known issue with JDK25 and
                        jpackage?</div>
                      <div>Is there any other way to make jpackage work?</div>
                      <div><br>
                      </div>
                      <div>Thanks,</div>
                      <div><br>
                      </div>
                      <div>-- Daniel</div>
                      <div><br>
                      </div>
                      <div><br>
                      </div>
                    </div>
                  </blockquote>
                  <br>
                </div>
              </blockquote>
            </div>
          </div>
        </blockquote>
      </div>
    </blockquote>
    <br>
  </div>

</blockquote></div></div>