Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8359913

jtreg version check error message is not accurate

XMLWordPrintable

      When building the JDK, one part of it involves checking the version of jtreg tool. That check resides in make/autoconf/lib-tests.m4.

      On macOS 26 (Beta), when "jtreg -version" command is launched, the jtreg tool exits with a non-zero exit code and at the same time writes out some diagnostic messages to System.err. The JDK build then fails with the following log/exception:

      checking for jtreg test harness... /home/me/jtreg-7.5.2+1.zip/jtreg
      checking for jtreg jdk... no, using BOOT_JDK
      checking jtreg jar existence... checking jtreg version number... The version of JDK you are using to run jtreg does not report the OS version correctly.
          java.home: /home/me/jdk-24.jdk/Contents/Home
          java.version: 24
          os.version: 16.0 (expected: 26.0)
      Use a more recent update of this version of JDK, or a newer version of JDK.

      configure: error: jtreg version is too old, at least version 7.5.2 is required
      ...

      Notice the last line in that error, it says "jtreg version is too old, at least version 7.5.2 is required". That's being printed by the JDK build process and is not accurate because as can been seen a few lines above in that output, 7.5.2 version was indeed in use. The real issue is that "jtreg -version" exited with a non-zero exit code with some System.err messages and those messages are literally being compared against 7.5.2 version.

      In make/autoconf/lib-tests.m4, it would be good to detect that "jtreg -version" failed unexpectedly and then report that accurately.

            Unassigned Unassigned
            jpai Jaikiran Pai
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: