Date: Wed, 12 May 2010 22:07:26 +0300 From: Kostik Belousov <kostikbel@gmail.com> To: Mike Jakubik <mike.jakubik@intertainservices.com> Cc: freebsd-java@freebsd.org Subject: Re: realpath: : No such file or directory Message-ID: <20100512190726.GD83316@deviant.kiev.zoral.com.ua> In-Reply-To: <4BEAE3B8.6040805@intertainservices.com> References: <4BEAC59B.9040105@intertainservices.com> <20100512152515.GA75759@misty.eyesbeyond.com> <4BEAC9A0.4050105@intertainservices.com> <20100512154024.GB75759@misty.eyesbeyond.com> <4BEAD2B6.8080300@intertainservices.com> <20100512165009.GB83316@deviant.kiev.zoral.com.ua> <4BEAE3B8.6040805@intertainservices.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--Q4+B1pX2h4duw/kc Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, May 12, 2010 at 01:22:00PM -0400, Mike Jakubik wrote: >=20 > On 5/12/2010 12:50 PM, Kostik Belousov wrote: > >On Wed, May 12, 2010 at 12:09:26PM -0400, Mike Jakubik wrote: > > =20 > >>On 5/12/2010 11:40 AM, Greg Lewis wrote: > >> =20 > >>>Sorry, too early to be replying to email. I bet what the problem is > >>>that you have a JVM listed in /usr/local/etc/javavms that doesn't=20 > >>>actually > >>>exist. javamvm runs realpath on the VMs listed there. > >>> > >>> > >>> =20 > >>Hrm, unfortunately that doesn't seem to be the problem. > >> > >>root@staging.local:~# cat /usr/local/etc/javavms > >>/usr/local/openjdk6/bin/java # OpenJDK6 > >> > >>root@staging.local:~# ls /usr/local/openjdk6/bin/java > >>-rwxr-xr-x 1 root wheel 54410 May 11 15:41:11 2010 > >>/usr/local/openjdk6/bin/java* > >> > >>root@staging.local:~# realpath /usr/local/openjdk6/bin/java > >>/usr/local/openjdk6/bin/java > >> =20 > >/usr/local/bin/javavm is shell script. > >Run it as "/bin/sh -x /usr/local/bin/javavm<args>" and post > >the realpath invocation that generates the error. > > =20 >=20 >=20 > root@staging.local:~# /bin/sh -x /usr/local/bin/javavm -version > +=20 > _JAVAVM_SAVE_PATH=3D/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/s= bin:/usr/local/bin:/root/bin > + export PATH=3D/bin:/sbin:/usr/bin:/usr/sbin > + _JAVAVM_PREFIX=3D/usr/local > + _JAVAVM_CONF=3D/usr/local/etc/javavms > + _JAVAVM_OPTS_CONF=3D/usr/local/etc/javavm_opts.conf > + basename /usr/local/bin/javavm > + _JAVAVM_PROG=3Djavavm > + _JAVAVM_MAKE=3D/usr/bin/make > + [ javavm =3D javavm ] > + echo 'javavm: warning: The use of '\''javavm'\'' as a synonym for=20 > '\''java'\'' is deprecated' > javavm: warning: The use of 'javavm' as a synonym for 'java' is deprecated > + _JAVAVM_PROG=3Djava > + [ -r /usr/local/etc/javavm_opts.conf ] > + . /usr/local/etc/javavm_opts.conf > + _JAVAVM_OPTS=3D'' > + setJavaHome > + realpath '' > realpath: : No such file or directory The realpath(1) was given an empty path. According to SUSv4, realpath(3) should return ENOENT if "A component of file_name does not name an existing file or file_name points to an empty string." This was recently brought into standard compliance. Why javavm passes empty path to realpath(1), I do not know. > + realpath /usr/local > + [ -n '' -a '' !=3D /usr/local ] > + unset JAVA_HOME > + _JAVAVM_PORTSDIR=3D'' > + [ -r /usr/share/mk/bsd.port.mk ] > + /usr/bin/make -f /usr/share/mk/bsd.port.mk -V PORTSDIR > + _JAVAVM_PORTSDIR=3D/usr/ports > + _JAVAVM_BSD_PORT_MK=3D'' > + [ -n /usr/ports -a -r /usr/ports/Mk/bsd.port.mk ] > + _JAVAVM_BSD_PORT_MK=3D/usr/ports/Mk/bsd.port.mk > + [ -n /usr/ports/Mk/bsd.port.mk ] > + /usr/bin/make -f /usr/ports/Mk/bsd.port.mk -V JAVA_HOME USE_JAVA=3Dyes > + JAVA_HOME=3D/usr/local/openjdk6 > + [ -n /usr/local/openjdk6 -a -f /usr/local/openjdk6/bin/java ] > + _JAVAVM_PROG_PATH=3D/usr/local/openjdk6/bin > + return 0 > + [ 0 !=3D 0 ] > + [ -x /usr/local/openjdk6/bin/java ] > + basename /usr/local/openjdk6 > + setJavaOptions java openjdk6 > + echo java > + sed -e 's/\./_/g' -e s/-/_/g > + local OPTS_PROG=3Djava > + echo openjdk6 > + sed -e 's/\./_/g' -e s/-/_/g > + local OPTS_JAVA_HOME=3Dopenjdk6 > + eval echo '${JAVAVM_OPTS_openjdk6_java}' > + local JAVA_HOME_PROG_OPTS=3D > + eval echo '${JAVAVM_OPTS_openjdk6}' > + local JAVA_HOME_OPTS=3D > + eval echo '${JAVAVM_OPTS_java}' > + local PROG_OPTS=3D > + [ -n '' ] > + [ -n '' ] > + [ -n '' ] > + [ -n '' ] > + export JAVA_HOME > + tryJavaCommand /usr/local/openjdk6/bin/java -version > + [ -n '' ] > + [ -x /usr/local/openjdk6/bin/java ] > + [ -n=20 > /sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/= root/bin=20 > ] > + export=20 > PATH=3D/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/loca= l/bin:/root/bin > + exec /usr/local/openjdk6/bin/java -version > openjdk version "1.6.0" > OpenJDK Runtime Environment (build 1.6.0-b17) > OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode) >=20 > _______________________________________________ > freebsd-java@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-java > To unsubscribe, send any mail to "freebsd-java-unsubscribe@freebsd.org" --Q4+B1pX2h4duw/kc Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (FreeBSD) iEYEARECAAYFAkvq/G4ACgkQC3+MBN1Mb4goYwCeNqmv34nW7OBz5Rm8BaeS3Adi iIAAnj9/ZMBORldeqZROO9ejOYzOQ+4A =zkAF -----END PGP SIGNATURE----- --Q4+B1pX2h4duw/kc--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100512190726.GD83316>