run-program issues with OpenJDK 11

Mark Evenson evenson at
Wed Jul 1 11:41:07 UTC 2020

> On Jun 29, 2020, at 01:13, Eric Timmons <etimmons at> wrote:
> It appears that java.lang.UNIXProcess was removed in OpenJDK 9 or
> thereabouts, assuming I'm interpreting
> correctly (/definitely/ not a Java developer here...).
> This seems to make run-program unusable when using prebuilt jars on
> recent JREs. Using the prebuilt 1.7.0 release and OpenJDK 11, I get the
> errors shown in prebuilt-openjdk11.txt (attached).

Hmmm.  I can’t seem to confirm under abcl-bin-1.7.0/openjdk11/linux.  

CL-USER> (sys:run-program "ls" nil)                                                 
#S(SYSTEM>:PROCESS :JPROCESS #<java.lang.ProcessImpl Process[pid=622, exitValue="no\
EAM) :%ERROR #S(SYSTEM::SYSTEM-STREAM))                                             
CL-USER> (swank-backend:getpid)                                                     
CL-USER> (lisp-implementation-version)                                              

> to get the PID of a process gives the error in from-source-openjdk11.txt
> (attached).


The (SWANK-BACKEND:GETPID) thunks down to the implementation where available,
as is the case in abcl-1.4.0 (??) onwards.


> Armed Bear Common Lisp 1.7.1-dev
> Java 11.0.7 Oracle Corporation
> OpenJDK 64-Bit Server VM
> Low-level initialization completed in 0.205 seconds.
> Startup completed in 1.224 seconds.
> Type ":help" for a list of available commands.
> CL-USER(1): (sys:run-program "ls" nil :wait nil)
> CL-USER(2): (sys:process-pid *)
> #<THREAD "interpreter" {7278E1D6}>: Debugger invoked on condition of type ERROR
>  Class not found: java.lang.UNIXProcess


What are the values returned for LISP-IMPLEMENTATION-VERSION where you
encountering the error?

You aren’t trying to get a java.lang.UNIXProcess under Windows by any chance?

"A screaming comes across the sky.  It has happened before but there is nothing 
to compare to it now."

More information about the armedbear-devel mailing list