You're running on a 64bit system without a 32bit runtime environment.
Assuming ubuntu/debian issue:
apt-get install libc6-i386
Or you should install the 64bit version of the package into this VM (which is probably the best solution).
The error message is coming from the run-time linker/loader. if you do a readelf -l java
you will find a line like:
[Requesting program interpreter: /lib/ld-linux.so.2]
Which is what you expect for a 32bit application, and you probably don't have the 32bit environment installed - check with an ls -l of that program interpreter
.
and example for a 64bit program would look like (your system may vary):
[Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]
If this is not the case, and you do have the 32bit libc installed, you can try an ldd java
, which will give a listing like:
linux-gate.so.1 => (0xf76ef000)
libpthread.so.0 => /lib32/libpthread.so.0 (0xf76b3000)
libjli.so => /home/bubba/java/jdk1.7.0_02/bin/./../jre/lib/i386/jli/libjli.so (0xf769f000)
libdl.so.2 => /lib32/libdl.so.2 (0xf7699000)
libc.so.6 => /lib32/libc.so.6 (0xf751f000)
/lib/ld-linux.so.2 (0xf76f0000)
if there are lines saying not found
then you should add pagkages providing that, but as you can see from this ldd
all the dependencies are core libraries that should be present on practically all linux systems.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…