IBM Support

IV89287: PROCESSBUILDER FAILED TO LAUNCH EXECUTABLES FROM RELATIVE PATH B ASED ON SPECIFIED DIRECTORY

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Error Message: N/A
    .
    Stack Trace: java.io.IOException: Cannot run program
    "./SampleScript.sh" (in directory
    "/u/enasser/defect/jazz-117497/tests/com/ibm/jtc/lang/jazz117497
    "): ./SampleScript.sh: not found
            at
    java.lang.ProcessBuilder.start(ProcessBuilder.java:1059)
            at
    tests.com.ibm.jtc.lang.jazz117497.ProcessBuilderTest.testProcess
    Builder(ProcessBuilderTest.java:44)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
    Method)
            at
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessor
    Impl.java:95)
            at
    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethod
    AccessorImpl.java:55)
            at
    tests.com.ibm.jtc.lang.jazz117497.ProcessBuilderTest.main(Proces
    sBuilderTest.java:63)
    Caused by: java.io.IOException: ./SampleScript.sh: not found
            at java.lang.UNIXProcess.fullPath(UNIXProcess.java:310)
            at java.lang.UNIXProcess.<init>(UNIXProcess.java:173)
            at java.lang.ProcessImpl.start(ProcessImpl.java:167)
            at
    java.lang.ProcessBuilder.start(ProcessBuilder.java:1040)
            ... 17 more
    .
    

Local fix

  • The issue can be work around by:
     - specifying the absolute path of the executable or
     - specifying relative path based on PWD.
    

Problem summary

  • ProcessBuilder does a validation to see whether the executable
    exists in the specified path. It uses the relative path based on
    current working directory while doing the validation and hence
    failed to find the executable if it exists on a relative path
    based on different directory specified using directory() method.
    

Problem conclusion

  • The JDK has been updated to validate the executable from the
    relative path based on the specified directory instead of using
    current working directory.
    .
    This APAR will be fixed in the following Java Releases:
       8    SR3 FP12  (8.0.3.12)
    .
    Contact your IBM Product's Service Team for these Service
    Refreshes and Fix Packs.
    For those running stand-alone, information about the available
    Service Refreshes and Fix Packs can be found at:
               https://www.ibm.com/developerworks/java/jdk/
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV89287

  • Reported component name

    JAVA CLASS LIBS

  • Reported component ID

    620700130

  • Reported release

    800

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-09-20

  • Closed date

    2016-09-20

  • Last modified date

    2016-09-20

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    JAVA CLASS LIBS

  • Fixed component ID

    620700130

Applicable component levels

  • R800 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSNVBF","label":"Runtimes for Java Technology"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.0","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]

Document Information

Modified date:
21 February 2022