First possible bug in OpenJDK 11 port
Michael Osipov
1983-01-06 at gmx.net
Fri Mar 15 23:20:42 UTC 2019
Folks,
here is a stripped down example from an issue with the new port:
> $ cat ../src/exec/Test.java
> package exec;
>
> import java.io.IOException;
>
> public class Test {
>
> public static void main(String[] args) throws IOException, InterruptedException {
> ProcessBuilder builder = new ProcessBuilder("/bin/sh", "-c", "cd && env");
> builder.inheritIO();
> Process p = builder.start();
> System.out.println("exit code: " + p.waitFor());
> }
>
> }
Fails:
> osipovmi at deblndw011x:~/exec/bin
> $ /usr/local/openjdk11/bin/java exec.Test
> Exception in thread "main" java.io.IOException: Cannot run program "/bin/sh": error=13, Permission denied
> at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1128)
> at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1071)
> at exec.Test.main(Test.java:12)
> Caused by: java.io.IOException: error=13, Permission denied
> at java.base/java.lang.ProcessImpl.forkAndExec(Native Method)
> at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:341)
> at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:272)
> at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1107)
> ... 2 more
as well as
> osipovmi at deblndw011x:~/exec/bin
> $ /usr/local/bootstrap-openjdk11/bin/java exec.Test
> Exception in thread "main" java.io.IOException: Cannot run program "/bin/sh": error=13, Permission denied
> at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1128)
> at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1071)
> at exec.Test.main(Test.java:12)
> Caused by: java.io.IOException: error=13, Permission denied
> at java.base/java.lang.ProcessImpl.forkAndExec(Native Method)
> at java.base/java.lang.ProcessImpl.<init>(ProcessImpl.java:341)
> at java.base/java.lang.ProcessImpl.start(ProcessImpl.java:272)
> at java.base/java.lang.ProcessBuilder.start(ProcessBuilder.java:1107)
> ... 2 more
and
> osipovmi at deblndw011x:~/exec/bin
> $ /usr/local/bootstrap-openjdk8/bin/java exec.Test
> Exception in thread "main" java.io.IOException: Cannot run program "/bin/sh": error=13, Permission denied
> at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
> at exec.Test.main(Test.java:12)
> Caused by: java.io.IOException: error=13, Permission denied
> at java.lang.UNIXProcess.forkAndExec(Native Method)
> at java.lang.UNIXProcess.<init>(UNIXProcess.java:251)
> at java.lang.ProcessImpl.start(ProcessImpl.java:134)
> at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
> ... 1 more
but successfully runs with:
> osipovmi at deblndw011x:~/exec/bin
> $ /usr/local/openjdk8/bin/java exec.Test
> SSH_CLIENT=147.54.65.49 55876 22
> LOGNAME=osipovmi
> LSCOLORS=ExGxFxdxCxDxDxhbadExEx
> HTTP_PROXY=http://194.145.60.1:9400
> LANG=de_DE.UTF-8
> JAVA_HOME=/usr/local/openjdk11
> NO_PROXY=localhost .siemens.net .siemens.com .siemens.de
> CLICOLOR=YES
> MAIL=/var/mail/osipovmi
> NCURSES_NO_UTF8_ACS=1
> PATH=/sbin:/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
> EDITOR=vim
> OLDPWD=/net/home/osipovmi/exec/bin
> DISPLAY=localhost:10.0
> PWD=/net/home/osipovmi
> _=/usr/local/openjdk8/bin/java
> TERM=xterm
> SSH_TTY=/dev/pts/0
> USER=osipovmi
> HOME=/net/home/osipovmi
> SSH_CONNECTION=147.54.65.49 55876 147.54.64.17 22
> PS1=\[\033[1;32m\]\u@\h\[\033[0m\]:\[\033[1;34m\]\w\[\033[0m\]\n$
> SHELL=/bin/sh
> MM_CHARSET=UTF-8
> HTTPS_PROXY=http://194.145.60.1:9400
> BLOCKSIZE=K
> FTP_PROXY=http://194.145.60.1:9400
> SHLVL=1
> exit code: 0
What is causing this issue?
For those who'd like to reproduce the bug: Clone Maven GitHub, try to to
build from master and see the Maven Surefire Plugin failing when it
tried to launch the Surefire Booter.
Java 8 Update 202, Java 11 newest from ports. OS is
> FreeBSD deblndw011x.ad001.siemens.net 12.0-STABLE FreeBSD 12.0-STABLE r344655 DEBLNDW011X amd64
Michael
More information about the freebsd-java
mailing list