Proposed new Java page. See this "discussion" for the rationale.
Java
Java relates to:
- a Community https://www.jcp.org/
- a Platform (JVM, JRE ...) https://en.wikipedia.org/wiki/Java_(software_platform)
- a Programming language (Java is the most popular) https://en.wikipedia.org/wiki/Java_(programming_language)
If you came here because an application ask for Java (or JRE, JVM) to be installed: install Java
sudo dnf install java
If it still does not work or the application ask specifically for Oracle Java: See here
If you want to develop, code, on the Java Platform: See Development
JRE JDK SDK JVM OpenJDK JSE JEE ?
Some vocabulary:
- JRE Java Runtime Environment. Required to run Java code and applications. Install
Java
. (There are other implementations, notably Oracle, see ...) - JVM Java Virtual Machine. Main component of the JRE.
- JDK Java Development Kit. Required only for development, coding.
- SDK Software Development Kit. idem JDK
- OpenJDK Open Source project for the Java Platform http://openjdk.java.net/.
- JSE & JEE obsolete acronyms for Java Standard & Enterprise Edition. JavaSE is like JRE.
Other implementations
If the default OpenJDK Java
Fedora package does not fulfil the requirements. Alternatives can be installed alongside or separately.
The Java Community Process defines the specifications of the platform that many implements (IBM J9, Jikes, Zing, Zulu Dalvik ...). We will only focus on Oracle here.
Multiple implementations can be installed side-by-side without interfering:
- The alternative system allows to switch from one to another.
- An application can directly reference a specific Java installation
- Some applications include a java platform, it is then transparent for the user. (But the package is bigger.)
Oracle version
Some applications still ask for Oracle's implementation. It is mostly based on the Open Source OpenJDK, but there are still some non-free code and Fedora does not package non-free softwares.
Oracle provides the RPM packages: https://java.com/en/download/help/linux_rpm.xml
Java packages in Fedora
- JavaFX (?) JavaFX is supposed to be merged in Java 8. Why is there a specific package??