Веома је уобичајено да се суочите са грешкама и изузецима у програмском језику Јава. Али са неким од најпопуларнијих и најчешћих грешака често се суочавају програмери који су нови у програмирању. Међу овим грешкама, нисам могао пронаћи или учитати главну класу у Јави, је један од њих који се обично јавља. Грешка указује да је јава команда није успео да бисте пронашли или учитали главну класу . То се дешава када покушамо да покренемо програм. Када дође до грешке, ЈВМ приказује следећу поруку о грешци на конзоли:
Error: Could not find or load main class ClassName
Грешка се углавном генерише када погрешно наведемо име класе у време покретања програма.
Разлози за појаву грешке
Грешка се генерише зато што ЈВМ не успева да учита име главне класе или пакета. Постоје неки други разлози који генеришу исту грешку, као што следи:
- Класа је декларисана у погрешном пакету.
- Зависности недостају у ЦЛАССПАТХ.
- Путања поддиректоријума не одговара потпуно квалификованом имену.
- Погрешан директоријум је на ЦЛАССПАТХ.
- ЦЛАССПАТХ апликације је погрешно наведен.
- Такође се дешава када смо направили грешку са аргументом имена класе.
Решење за грешку
Да бисмо избегли или решили грешку, морамо да наведемо апсолутно име пакета или име класе.
Без пакета
Главна класа је класа у којој је дефинисана метода маин(). Хајде да направимо програм који генерише и приказује грешку на конзоли.
ДемоЦласс.јава
public class DemoClass { public static void main(String[] args) { System.out.print('Enter a string: '); //using console to input data from user String name = System.console().readLine(); System.out.println('You have entered: '+name); } }
Излаз:
Видимо да се горњи програм успешно компајлира и покреће. Хајде да генеришемо грешку која није могао да пронађе или учита главну класу у горе наведеном програму. Да бисмо генерисали и приказали грешку, имамо погрешно написано име класе док куцате јава команда јава ДемоЦлас .
Такође се јавља када наведемо .класа проширење на крају назива класе.
java DemoClass.class
Да бисте избегли грешку, немојте писати .класа проширење на крају назива класе док користите јава команда.
java DemoClass
Грешка се такође јавља када класу не поставимо у исправну фасциклу. На следећој слици, ми нисмо унутар демо фасциклу у којој се налази разред. То значи да ДемоЦласс.цласс датотека мора бити унутар директоријума Ц:демо .
Са пакетом
У горњем програму, направимо пакет под називом цом.јаватпоинт . То значи да ће приликом компајлирања следећег Јава програма .цласс фајл бити генерисан унутар Ц:демоцомјаватпоинтДемоЦласс.цласс .
ДемоЦласс.јава
package com.javatpoint; public class DemoClass { public static void main(String[] args) { System.out.print('Enter a string: '); //reading a string from the user String name = System.console().readLine(); System.out.println('You have entered: '+name); } }
Излаз:
Запамтите да ако је класа унутар пакета, морамо користити пуно име класе, укључујући име пакета, у јава команди.