JDK-8316897 : tools/jpackage/junit tests fail on AIX after JDK-8316547
  • Type: Bug
  • Component: tools
  • Sub-Component: jpackage
  • Affected Version: 22
  • Priority: P4
  • Status: Open
  • Resolution: Unresolved
  • OS: aix
  • CPU: generic
  • Submitted: 2023-09-25
  • Updated: 2023-09-26
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
tbdUnresolved
Related Reports
Relates :  
Description
The tools/jpackage/junit tests fail on AIX after JDK-8316547.
Looks like the build-step does not work nicely.
This might be related to different jtreg behavior on Linux vs. AIX.
We do not see the issue on other platforms.

error is for example :
TEST: tools/jpackage/junit/jdk.jpackage/jdk/jpackage/internal/CompareDottedVersionTest.java
TEST RESULT: Error. can't find jdk.jpackage.jdk.jpackage.internal.AppImageFileTest in test directory or libraries

Seems the build - commands found in jtr file differ on AIX vs. Linux, see
AIX :

#section:build
----------messages:(3/691)----------
command: build jdk.jpackage.jdk.jpackage.internal.AppImageFileTest jdk.jpackage.jdk.jpackage.internal.ApplicationLayoutTest jdk.jpackage.jdk.jpackage.internal.CompareDottedVersionTest jdk.jpackage.jdk.jpackage.internal.DeployParamsTest jdk.jpackage.jdk.jpackage.internal.DottedVersionTest jdk.jpackage.jdk.jpackage.internal.EnquoterTest jdk.jpackage.jdk.jpackage.internal.InvalidDottedVersionTest jdk.jpackage.jdk.jpackage.internal.OverridableResourceTest jdk.jpackage.jdk.jpackage.internal.PathGroupTest jdk.jpackage.jdk.jpackage.internal.PlatformVersionTest jdk.jpackage.jdk.jpackage.internal.ToolValidatorTest
reason: Named class compiled on demand
started: Mon Sep 25 12:31:58 CEST 2023
result: Not run. Test running...

test result: Error. can't find jdk.jpackage.jdk.jpackage.internal.AppImageFileTest in test directory or libraries


Linux (works nicely) :

#section:build
----------messages:(5/177)----------
command: build jdk.jpackage/*
reason: Named class compiled on demand
started: Mon Sep 25 13:18:59 CEST 2023
finished: Mon Sep 25 13:18:59 CEST 2023
elapsed time (seconds): 0.01
result: Passed. All files up to date


Linux uses command: build jdk.jpackage/* while AIX has something different (and wrong). Maybe it is a jtreg issue ?

Comments
Hi [~cstein] the difference is that AIX uses listClasses vs. Linux uses listModules ; this leads to the different build/compile call . Why listClasses on AIX vs. listModules on Linux ? Because "jdk.jpackage" is found as a system module on Linux but not on AIX. We use jtreg 7.3.1+1 on all platforms.
26-09-2023

What's the version of jtreg you use on AIX, 7.3.1+1? Can you attach the entire .jtr file from the run on AIX, please? Except for code handling low level differences for Cygwin or WSL and setting enviroment variables, there's no platform-specific code in jtreg when generating the build command.
25-09-2023