Нужно ли пользователю иметь JVM для запуска Java-программы?
Я новичок в Java. Только начал изучать этот язык программирования и узнал, что программы на Java компилируются в байт-код, который выполняется виртуальной машиной Java (JVM). Но если у пользователя (к примеру, Windows) не будет установлена JVM, сможет ли он запустить программу? Или ему надо будет зайти на сайт Oracle, скачать Java и уже потом запустить мою программу на Java?
Извините, если вопрос глупый, но я только начал изучать Java.
Да, разумеется. Поэтому некоторые Java-программы распространяются в виде установщика, который сразу же ставит вместе с программой и JVM (причем часто в папку программы). Например, так делает JetBrains IDEA.
Значит, если я напишу программу в Intellij IDEA, скомпилирую её средствами IDE, то она будет с JVM и пользователю нужно будет скачать только мою программу и ничего больше, чтобы её запустить. Правильно?
Алан, нет. Я написал что сама IDEA идет в комплекте с собственной JVM, а не то что она позволяет такие установщики создавать.
Чтобы создать такой установщик можно воспользоваться утилитой jpackage (входит в JDK начиная с 14 версии). Но я бы советовал сейчас сосредоточиться на вопросах изучения языка, а вопросы распространения конечной программы оставить на будущее. Потому что, прежде чем их решать, нужно сначала написать саму программу.