Looks like an ABCL bug to me. Can you report it to ABCL if not done yet?
If ABCL developers say it can't be fixed promptly, I can try to revert ABCL to not use launch-program but system.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org My hobby of not attending meetings about recycling saves more energy than your hobby of recycling. — John McCarthy
On Wed, Jan 4, 2017 at 4:19 PM, Mirko Vukovic mirko.vukovic@gmail.com wrote:
I ran the following on abcl 1.4 on windows 10 with Java 1.8.0_112 with --noinint.
I test uiop:run-program like this: (uiop/run-program:run-program '("where.exe" "java.exe") :output :string)
It works fine with asdf-3.1.7. If I load 3-1.7.43, it works only on the second try of a session.
Session transcript with 3.1.7: CL-USER(5): (load "asdf-3.1.7.lisp") T CL-USER(6): (uiop/run-program:run-program '("where.exe" "java.exe") :output :string) "C:\ProgramData\Oracle\Java\javapath\java.exe " NIL 0
If I load 3-1.7.43, it works only on the second try of a session.
Here is a synopsis of doing run-program twice:
CL-USER(2): (uiop/run-program:run-program '("where.exe" "java.exe") :output :string) Error loading jar:file:C:/mv-program-files/abcl-bin-1.4.0/abcl.jar!/org/armedbear/lisp/run-program.abcl at line 166 (offset 8688) #<THREAD "interpreter" {34D8B89D}>: Debugger invoked on condition of type ERROR Class not found: java.lang.UNIXProcess Restarts: 0: TOP-LEVEL Return to top level. [1] SYS(3):
Pressing `0' results in a huge java stack:
java.lang.ExceptionInInitializerError at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ... at org.armedbear.lisp.LispThread.execute(LispThread.java:798) at org.armedbear.lisp.Interpreter.run(Interpreter.java:361) at org.armedbear.lisp.Main$1.run(Main.java:48) at java.lang.Thread.run(Unknown Source) Caused by: org.armedbear.lisp.Go Error loading jar:file:C:/mv-program-files/abcl-bin-1.4.0/abcl.jar!/org/armedbear/lisp/run-program.abcl at line 166 (offset 8688) #<THREAD "interpreter" {34D8B89D}>: Debugger invoked on condition of type ERROR Compiled function can't be loaded: org.armedbear.lisp.run_program_49 from org.armedbear.lisp.Pathname@3027289e Restarts: 0: TOP-LEVEL Return to top level.
Pressing `0' brings be back to the top level from which I try again run program, this time with success.
[1] SYS(4): 0 CL-USER(5): (uiop/run-program:run-program '("where.exe" "java.exe") :output :string) "C:\ProgramData\Oracle\Java\javapath\java.exe " NIL 0 CL-USER(6):