Ответ 1
System.getProperty("sun.arch.data.model");
То, что я пытаюсь выяснить, это то, что моя JRE предназначена для 32-разрядных или 64-разрядных версий.
И да, я пробовал java -version / -showversion / -fullversion
, но он не говорит ничего полезного (по крайней мере, не для меня).
Это то, что я получаю, когда я делаю java -version
:
java version "1.6.0_11"
Java(TM) SE Runtime Environment (build 1.6.0_11-b03)
Java HotSpot(TM) Client VM (build 11.0-b16, mixed mode)
Итак, у меня есть доступ к ZIP-папке JRE, установленная и настроенная другая JRE, это не та, которую я пытаюсь проверить версию.
Любые идеи?
System.getProperty("sun.arch.data.model");
Если вы пытаетесь сделать это из командной строки, file
- ваш друг:
$ cat `which java` | file -
/dev/stdin: ELF 64-bit LSB executable, x86-64, version 1 (SYSV),
dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for
GNU/Linux 2.6.32, BuildID[sha1]=440c433f29884a88f874e6d8260f156f4b352818,
stripped
(Используя cat
, потому что в моем случае java
является символической ссылкой.)
Я получаю следующее, когда запускаю команду на своей 64-битной машине. Java -version всегда получает вас на том, что установлено в свойствах среды или что-то, что выбрано из значка Java в JRE. На вашем компьютере могут быть установлены другие. Посмотрите на "арку".
C:\Users\nyera>java -version
java version "1.6.0_27"
Java(TM) SE Runtime Environment (build 1.6.0_27-b07)
Java HotSpot(TM) 64-Bit Server VM (build 20.2-b06, mixed mode)