Как узнать битность java
Для того, чтобы узнать битность Java , можно выполнить следующие действия:
- Запустите командную строку.
- Введите команду java -version
- Найдите строку, начинающуюся с «java version»
- Если в этой строке есть фраза «64-bit», то установлена 64-битная версия Java , иначе — 32-битная версия.
Например, вот пример вывода, который указывает на установку 64-битной версии Java :
"1.8.0_221" Java(TM) SE Runtime Environment (build 1.8.0_221-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)
как узнать какая версия Java стоит у меня на компе? 32 битная или 64 битная
1.И Ява и Джава говорить правильно, спорить бесполезно.
2.Не тебе давать советы совершенно другому человеку. Не завышай свою самооценку.
3.Для чего?
4.
Leonid BurbaЗнаток (327) 4 года назад
1. Ты даун?
2, И Ява и Джава, и то и другое правильно
3. СОСАТБ
4. Иди на х*й
ZHERANDAY CREATEУченик (134) 4 года назад
нет, ИГРАЙ В МАЙНКРАФТ!
Антон КукасовМудрец (14985) 3 года назад
Не Джава, а Ява.
ZigodaПрофи (514) 3 года назад
Сделали тут срач
Похожие вопросы
Ваш браузер устарел
Мы постоянно добавляем новый функционал в основной интерфейс проекта. К сожалению, старые браузеры не в состоянии качественно работать с современными программными продуктами. Для корректной работы используйте последние версии браузеров Chrome, Mozilla Firefox, Opera, Microsoft Edge или установите браузер Atom.
Как проверить версию, обновить или удалить Java с помощью PowerShell?

26.10.2020

itpro

PowerShell, Windows 10, Windows Server 2016

комментариев 7
Java Runtime Environmen (JRE) достаточно широко используется для запуска различных корпоративных приложений, написанных на java. Однако некоторые программы требуют для запуска определенную версию Java и могут некорректно работать в других версиях. В этой статье мы рассмотрим, как разобраться, какие версии Java установлены на компьютерах пользователей в вашей сети, а также как удалить или обновить версию среды JRE с помощь PowerShell.
Как узнать установленную версию Java в Windows?
Вы можете получить номер версии Java, установленной на вашем компьютере, если наберете ‘ java ’ в окне поиска Windows 10 и запустите апплет Java.

В открывшемся окне «About Java» указана текущая версия JRE. В моем случае это Java Version 8 Update 231 (build 1.8.0_231-b11). Обратите внимание на значение билда JRE. Во всех версиях Java в начале указана 1, затем номер мажорной версии JRE (у меня это 8), потом номер обновления.

Также вы можете узнать текущую версию Java в панели ‘Программы и компонентах Windows’ (Win+R -> appwiz.cpl ).

Можно вывести текущую версию Java из командной строки. Запустите cmd.exe и выполните команду:
java version "1.8.0_231" Java(TM) SE Runtime Environment (build 1.8.0_231-b11) Java HotSpot(TM) Client VM (build 25.231-b11, mixed mode)

Как узнать версию Java из PowerShell?
Вы можете узнать версию Java на вашем компьютере с помощью PowerShell. Можно просто проверить версию исполняемого файла java.exe (путь к ней прописывается в переменные окружения при установке JRE SE на вашем компьютере). Выведем версию java файла:
Get-Command Java | Select-Object Version

Можно вывести подробную информацию о версии, обновлении и релизе Java:
Get-Command java | Select-Object -ExpandProperty Version
Major Minor Build Revision ----- ----- ----- -------- 8 0 2310 11
Если вам нужно получить строковое значение версии Java для использования в скриптах, используйте:
(Get-Command java | Select-Object -ExpandProperty Version).tostring()

Также вы можете узнать версию Java через WMI класс, который содержит список установленных программ в Windows:
Get-WmiObject -Class Win32_Product -Filter «Name like ‘%Java%'»

IdentifyingNumber : Name : Java 8 Update 231 Vendor : Oracle Corporation Version : 8.0.2310.11 Caption : Java 8 Update 231 IdentifyingNumber : Name : Java Auto Updater Vendor : Oracle Corporation Version : 2.8.231.11 Caption : Java Auto Updater
Полученные ID можно использовать в дальнейшем для корректного удаления JRE.
Если нужно вывести только версии Java, и нужно исключить Java Auto Updater, используйте команду:
Get-WmiObject -Class Win32_Product -Filter «Name like ‘%Java%’ and not Name like ‘%Java Auto Updater%'» | Select -Expand Version
PowerShell: получить версию Java на удаленных компьютерах
Если вы хотите выполнить инвентаризацию версий Java, используемых на компьютерах или серверах в вашем домене, вы можете использовать следующий PowerShell скрипт. Данный скрипт может удаленно опросить сервера по списку указанному вручную, загрузить список из текстового файла. Также вы можете получить список серверов или компьютеров из AD с помощью командлета Get-ADComputer из модуля RSAT-AD-PowerShell.
# PowerShell скрипт для проверки верси Java SE (JRE) на удаленных компьютерах/серверах
# Проверить версию Java по списку компьютеров
# Проверить версию Java по списоку серверов в текстовом файле
# Получить версию Java на всех серверах домена
Get-WmiObject -Class Win32_Product -ComputerName $computers -Filter «Name like ‘%Java%’ and not Name like ‘%Java Auto Updater%’» | Select __Server, Version

В результате у вас появится табличка со списком компьютеров/серверов и версией Java на них.
В моем случае при проверке версии Java на компьютерах я нашел 35 различных версий JRE!
Скрипт PowerShell для удаления всех версий Java
Почему вам может понадобится удалять предыдущие версии Java в Windows?
- Перед установкой новой версии Java желательно удалить все предыдущие версии. Как и во всех других продуктах в Java постоянно обновляется функционал, и исправляются критические уязвимости. Если у вас установлена старая версий Java, вы подвергаете компьютер риску заражения и эксплуатации известных и 0-day уязвимостей. В Java встроен механизм автоматического обновления, но по разным причинам администраторы могут отключать его на компьютерах домена.
- У вас нет коммерческой подписки на использование Java JRE. С 2019 года Oracle изменил лицензионную политику Java. Теперь, если вы хотите использовать старые версии Oracle JDK (Java SE), вам нужно приобретать платную подписку. Это касается всех выпусков Java JRE после 16 апреля 2019 года (начиная с Java 8 SE Update 211).
Для коммерческих версий Java SE предусматривается длительная поддержка (обновление выпускаются 5 лет после выпуска). Бесплатная версия Java — Open JDK (распространяется по GPL), однако вам придётся обновлять ее раз в полгода. Еще один недостаток Open JDK – пока отсутствуют нормальные средства установки для Windows. Приходится качать и устанавливать Open JDK вручную. Есть один приемлемые вариант с установкой Open JDK с помощью менеджера пакетов Chocolatey: choco install openjdk
Следующий PowerShell скрипт можно использовать для удаление всех установленных версий Java на компьютере
$jre_installed = Get-WmiObject -Class Win32_Product -Filter «Name like ‘%Java%'»
$jre_installed.Uninstall()
Однако рассмотренная выше команда удаления основана на WMI и не смотря на свою простоту, работает довольно медленно.
Вместо этого можно получить список установленных Java из реестра и удалить все найденные версии Java по GUID продукта, который генерируется при установке ПО через MSI.

#PowerShell скрипт для удаления всех версий Java SE (JRE) на компьютере
$uninstall32 = gci «HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall» | foreach < gp $_.PSPath >| ? < $_ -like "*Java*" >| select UninstallString
$uninstall64 = gci «HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall» | foreach < gp $_.PSPath >| ? < $_ -like "*Java*" >| select UninstallString
# Удаление 64 битных версий Java
if ($uninstall64) $uninstall64 = $uninstall64.UninstallString -Replace «msiexec.exe», «» -Replace «/I», «» -Replace «/X», «»
$uninstall64 = $uninstall64.Trim()
Write «Uninstalling. «
start-process «msiexec.exe» -arg «/X $uninstall64 /qb» -Wait
>
# Удаление 32 битных версий Java
if ($uninstall32) $uninstall32 = $uninstall32.UninstallString -Replace «msiexec.exe»,»» -Replace «/I»,»» -Replace «/X»,»»
$uninstall32 = $uninstall32.Trim()
Write «Uninstalling all Java SE versions. «
start-process «msiexec.exe» -arg «/X $uninstall32 /qb» -Wait
>
PowerShell cкрипты из этой статьи доступны в моем репозитории на GitHub https://github.com/winadm/posh/tree/master/Java.
Как скачать установить Java JRE с помощью PowerShell?
Следующий PowerShell скрипт позволяет автоматически скачать последнюю версию дистрибутива Java (можно скачать офлайн или онлайн установщик) с официального сайта и установить его на компьютере пользователя. При этом мы подавляем требование перезагрузки и отключаем автоматическое обновлений Java.
Для скачивания файла установщика с сайта используется командлет Invoke-WebRequest.
#PowerShell скрипт для автоматической загрузки и установки последней версии Java SE (JRE) на компьютере
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
# скачать онлайн установщик Java
$URL = (Invoke-WebRequest -UseBasicParsing https://www.java.com/en/download/manual.jsp).Content | % < [regex]::matches($_, '(?:)').Groups[1].Value >
# скачать офлайн установщик Java
#$URL = (Invoke-WebRequest -UseBasicParsing https://www.java.com/en/download/manual.jsp).Content | % < [regex]::matches($_, '(?:)').Groups[1].Value >
Invoke-WebRequest -UseBasicParsing -OutFile jre8.exe $URL
Start-Process .\jre8.exe ‘/s REBOOT=0 SPONSORS=0 AUTO_UPDATE=0’ -wait
echo $?
Если компьютер, находится за прокси, нужно настроить PowerShell для доступа к интернету через прокси.

Первая строка в скрипте добавлена, чтобы переключиться на протокол TLS 1.2. Иначе при запуске у меня появлялась ошибка:
Invoke-WebRequest : Запрос был прерван: Не удалось создать защищенный канал SSL/TLS.

Скрипт автоматически загрузит установочный файл Java, сохранит его на диск в виде jre8.exe и установит среду JRE.
Предыдущая статья Следующая статья
Читайте далее в разделе PowerShell Windows 10 Windows Server 2016



Защита RDP от подбора паролей с блокировкой IP правилами Windows Firewall
Когда истекает пароль пользователя в AD, оповещаем пользователей о необходимости сменить пароль
Установка и настройка Windows Hyper-V Server 2019 (2016)
Вам понадобится новое приложение, чтобы открыть эту ссылку Windows Defender
Определение версии JVM: 32-bit или 64-bit
Когда работаешь с Java, иногда возникает необходимость определить, в какой версии Java Virtual Machine (JVM) запущено приложение — 32-битной или 64-битной. Это может быть полезно при отладке программы, например, при оптимизации использования памяти.
В отличие от некоторых других языков программирования, Java не предоставляет прямого способа определения разрядности JVM. Однако есть несколько способов обойти это ограничение и получить необходимую информацию.
Один из способов — это использование свойства системы os.arch . Это свойство определяет архитектуру операционной системы, на которой запущена JVM.
String osArch = System.getProperty("os.arch");
Если полученное значение равно x86 , это означает, что JVM 32-битная. Если значение равно amd64 или x86_64 , то JVM 64-битная.
Важно помнить, что это свойство определяет архитектуру операционной системы, а не JVM. Это значит, что если у вас 64-битная операционная система, но установлена 32-битная версия JVM, os.arch вернёт значение, указывающее на 64-битную систему.
Второй способ — это использование свойства системы sun.arch.data.model . Это свойство определяет разрядность JVM.
String jvmBitVersion = System.getProperty("sun.arch.data.model");
Если полученное значение равно 32 , это означает, что JVM 32-битная. Если значение равно 64 , то JVM 64-битная.
Этот способ более надёжен, поскольку он определяет именно разрядность JVM, а не операционной системы. Однако он работает только на JVM от Oracle и OpenJDK, поскольку свойство sun.arch.data.model не является стандартным.
Таким образом, определение разрядности JVM — это задача, которую можно решить несколькими способами. Важно выбрать подходящий метод, исходя из конкретной ситуации и требований к приложению.