- Java (JRE/JDK) – Check version installed
- Check JDK Version
- Check JRE Version
- Where JDK is installed?
- Check Java Version in Windows 10 (GUI)
- Check Java Version using PowerShell
- Check Java Version on Remote Computers (Powershell)
- Как проверить версию Java
- Управление версиями Java
- Проверка версии Java
- Выводы
- Как проверить версию JDK, установленную на вашем компьютере
- 1. Где установлен JDK?
- Рекомендации
- Читайте ещё по теме:
Java (JRE/JDK) – Check version installed
Firts of all, for end-users, they need to install JRE to run the Java program, and the JDK is for developers. For the production environment, the deployment team only need to install JRE to run the Java program. However, developers often request to install the JDK, instead of the standalone JRE on the production server, because the JDK contains JRE and also extra tools to monitor and debug the running Java program.
The Java development kit (JDK) contains tools for Java development, and the Java Runtime Environment (JRE) contains a JVM to convert byte code .class to machine code, and execute it, in short, the JRE runs Java program.
Check JDK Version
A common way to check JDK version is by using the following simple command to find out the version of the installed JDK. In the below example, the JDK version is 11.0.7:
Check JRE Version
Similarly, we can use java -version to find out the version of the installed JRE. In the below example, the JRE version is 1.8.0_252:
$ java -version openjdk version "1.8.0_252" OpenJDK Runtime Environment (build 1.8.0_252-8u252-b09-1~19.10-b09) OpenJDK 64-Bit Server VM (build 25.252-b09, mixed mode)
The JDK and JRE versions can be different on the same computer. Multiple JDK and JRE versions are allowed on the same computer; it is better to find out which version is configured in the system classpath to run or compile the Java program.
Where JDK is installed?
On Ubuntu or Linux system, we can use which javac to find out where JDK is installed:
$ which javac /usr/bin/javac $ ls -lsah /usr/bin/javac /usr/bin/javac -> /etc/alternatives/javac $ ls -lsah /etc/alternatives/javac /etc/alternatives/javac -> /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/bin/javac $ cd /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/bin/ $ ./javac -version javac 11.0.7
In the above example, the JDK is installed at /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/.
In addition, we can use Linux apt package manager (Debian/Ubuntu systems) to get info about installed Java:
sudo apt list --installed | grep -i openjdk
We can also list all installed packages and filter for Java using the dpkg command:
And below on RedHat/CentOS systems (obviously the java -version approach is still valid):
rpm -qi openjdk OR yum info "openjdk" OR yum list installed | grep -i openjdk
On Microsoft Windows, we can use dir /b /s javac.exe to find out where JDK is installed.
Microsoft Windows [Version 10.0.18362.900] (c) 2019 Microsoft Corporation. All rights reserved. C:\>dir /b /s javac.exe C:\Program Files\Common Files\Oracle\Java\javapath\javac.exe C:\Program Files\Common Files\Oracle\Java\javapath_target_52887656\javac.exe C:\Program Files\Java\jdk-11.0.12\bin\javac.exe C:\Program Files\Java\jdk1.8.0_271\bin\javac.exe
Or, alternatively, using Powershell:
Get-Childitem –Path C:\ -Include javac.exe -Recurse -ErrorAction SilentlyContinue
Check Java Version in Windows 10 (GUI)
You can get the version number of Java installed on your computer if you enter java in Windows 10 search box and run Java applet.
In About Java window, the current JRE version is specified. In this case, it is Java Version 8 Update 261 (build 1.8.0_261-b12). Note the value of the JRE build. All Java versions have 1 at the beginning followed by the number of major JRE version (it is 8 in this case) and the update number.
We can also check the current Java version in Windows Program and Features (Win+R -> appwiz.cpl).
Check Java Version using PowerShell
You can check Java version installed on your computer using PowerShell. You can just check the version of the executable file java.exe (the path to it is set in the environment variables when JRE SE is installed on your computer). Display the java file version:
Get-Command Java | Select-Object Version
We can view detailed information about Java version, update and release number:
Get-Command java | Select-Object -ExpandProperty Version Major Minor Build Revision ----- ----- ----- -------- 8 0 2610 12
If we want to get a string value of your Java JRE version to be used in scripts, use the command:
(Get-Command java | Select-Object -ExpandProperty Version).tostring()
If we want to specifically be sureabout the JDK version installed on the system, we can use the following Powershell command targeting the Java compiler, javac.exe:
(Get-Command javac | Select-Object -ExpandProperty Version).tostring()
We can also find out your Java version using WMI class Win32_Product (contains the list of installed programs in Windows):
Get-WmiObject -Class Win32_Product -Filter "Name like '%Java%'"
The IDs may be used later to correctly uninstall JRE.
If you want to display only Java version without Java Auto Updater, use the following command:
Get-WmiObject -Class Win32_Product -Filter "Name like '%Java%' and not Name like '%Java Auto Updater%'" | Select -Expand Version
Finally, we can dig directly into the Windows Registry, using Powershell, to get the actual installed version of both JRE and JDK packages with the following two commands:
dir "HKLM:\SOFTWARE\JavaSoft\Java Runtime Environment" | select -ExpandProperty pschildname -Last 1 dir "HKLM:\SOFTWARE\JavaSoft\Java Development Kit" | select -ExpandProperty pschildname -Last 1
Check Java Version on Remote Computers (Powershell)
If we want to get Java versions used on all computers or servers in your domain, you can use the following PowerShell script. The script can get the information from all servers remotely according to the list you enter manually or from a text file. You can also get the list of servers or computers in AD using the Get-ADComputer cmdlet from the RSAT-AD-PowerShell module.
# Check Java version against the list of servers in a text file #$computers=Get-content C:\PS\ServerList.txt # To get Java version on all Windows Servers in AD domain $computers = ((get-adcomputer -Filter < enabled -eq “true” -and OperatingSystem -Like ‘*Windows Server*’ >).name).tostring() Get-WmiObject -Class Win32_Product -ComputerName $computers -Filter “Name like ‘%Java%’ and not Name like ‘%Java Auto Updater%'” | Select __Server, Version
An additional, similar, way to get Java version info from remote systems, by using Powershell, is the following Invoke-Command approach:
$Servers = Get-Content 'C:\Server.txt' $ServersNotAvailable = @() $JavaVersion = < function GetJavaVersion() < Try < $ret = java -version 2>&1 | Select-String "version" | select @>,@> return $ret > Catch < $Prop = [ordered]@New-Object -TypeName psobject -Property $Prop > > GetJavaVersion > foreach($Server in $Servers) < $TestCon = Test-Connection -ComputerName $Server -Count 1 -Quiet if($TestCon) < Invoke-Command -ComputerName $Server -ScriptBlock $javaversion | Select Server,JavaVersion >else < $ServersNotAvailable = $Server + "," + $ServersNotAvailable >> ### Below is list of servers which are not available over the network or not pingable Write-Host "`nServers Not reachable over Network" -ForegroundColor Green $ServersNotAvailable
Как проверить версию Java
Java — один из самых популярных языков программирования в мире, используемый для создания различных типов кроссплатформенных приложений.
В этой статье объясняется, как с помощью командной строки проверить, какая версия Java установлена в вашей системе Linux. Это может быть полезно при установке приложений, требующих определенной версии Java.
Управление версиями Java
Java использует семантическое управление версиями . Версии готовых к выпуску релизов представлены по следующей схеме:
Например, в Java 11.0.8 11 — это основная версия, 0 — дополнительная версия, а 8 — версия безопасности.
- MAJOR — Основные выпуски содержат новые возможности и функции.
- MINOR — второстепенные выпуски содержат различные исправления ошибок и совместимые улучшения.
- SECURITY — выпуски безопасности содержат критические исправления безопасности.
Проверка версии Java
Чтобы узнать, какая версия Java установлена в вашей системе, выполните команду java -version :
Команда отобразит версию Java по умолчанию:
openjdk 11.0.8 2020-07-14 OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04) OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)
В этом примере в нашей системе установлена Java версии 11.0.8 . Версия, установленная в вашей системе, может отличаться.
Если вы получили сообщение «java: command not found», это означает, что Java не установлена в системе. Чтобы установить Java, воспользуйтесь одним из следующих руководств в зависимости от вашего дистрибутива Linux:
В системе также может быть установлено несколько версий Java одновременно. Чтобы проверить, есть ли на вашем компьютере несколько установок Java:
sudo update-alternatives --config java
Если у вас только одна установка Java, результат будет выглядеть примерно так:
There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-11-openjdk-amd64/bin/java Nothing to configure.
В противном случае, если у вас несколько установок Java, команда отобразит меню, в котором вы можете выбрать, какая версия будет версией Java по умолчанию:
There are 3 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 auto mode 1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode 2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode Press to keep the current choice[*], or type selection number:
Чтобы изменить версию Java по умолчанию, просто введите номер версии (число в столбце «Выбор») и нажмите Enter .
Выводы
Узнать, какая версия Java установлена в вашей системе Linux, очень просто, просто введите java -version .
Не стесняйтесь оставлять комментарии, если у вас есть вопросы.
Как проверить версию JDK, установленную на вашем компьютере
В терминале мы можем использовать “javac-версию” для проверки версии JDK и `java-версию` для проверки версии JRE.
Комплект для разработки Java (JDK) содержит инструменты для разработки Java, а Среда выполнения Java (JRE) содержит JVM для преобразования байтового кода .class для машинного кода и его выполнения, короче говоря, JRE запускает программу Java.
Проверьте версию JDK Мы можем использовать java-версию чтобы узнать версию установленного JDK. В приведенном ниже примере версия JDK равна
Проверьте версию JRE Мы можем использовать java-версию , чтобы узнать версию установленной JRE. В приведенном ниже примере версия JRE равна 1.8.0_252
$ java -version openjdk version "1.8.0_252" OpenJDK Runtime Environment (build 1.8.0_252-8u252-b09-1~19.10-b09) OpenJDK 64-Bit Server VM (build 25.252-b09, mixed mode)
Версии JDK и JRE могут отличаться на одном компьютере. На одном компьютере разрешено несколько версий JDK и JRE; лучше выяснить, какая версия настроена в системном пути к классам для запуска или компиляции программы Java.
1. Где установлен JDK?
JDK также содержит JRE для запуска программы Java.
1.1 В Ubuntu или Linux мы можем использовать какой javac , чтобы узнать, где установлен JDK.
$ which javac /usr/bin/javac $ ls -lsah /usr/bin/javac /usr/bin/javac -> /etc/alternatives/javac $ ls -lsah /etc/alternatives/javac /etc/alternatives/javac -> /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/bin/javac $ cd /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/bin/ $ ./javac -version javac 11.0.7
В приведенном выше примере JDK установлен по адресу /usr/lib/jvm/adoptopenjdk-11-hotspot-amd64/ .
1.2 В Windows мы можем использовать где javac , чтобы узнать, где установлен JDK.
Microsoft Windows [Version 10.0.18362.900] (c) 2019 Microsoft Corporation. All rights reserved. C:\Users\mkyong>which javac 'which' is not recognized as an internal or external command, operable program or batch file. C:\Users\mkyong>where javac C:\opt\jdk-11.0.1\bin\javac.exe
Нужен ли мне JDK или JRE? Для конечных пользователей им необходимо установить JRE для запуска программы Java, а JDK предназначен для разработчиков. В производственной среде команде развертывания необходимо установить JRE только для запуска программы Java. Однако разработчики часто запрашивают установку JDK вместо автономной JRE на рабочем сервере, поскольку JDK содержит JRE, а также дополнительные инструменты для мониторинга и отладки запущенной Java-программы.