logo

Не може да се намери или зареди основният клас в Java

Много често се срещат грешки и изключения в езика за програмиране Java. Но с някои от най-популярните и често срещани грешки често се сблъскват програмисти, които са нови в програмирането. Сред тези грешки, не може да намери или зареди основния клас в Java, е един от тях, който се среща обикновено. Грешката показва, че java команда се провали за намиране или зареждане на основния клас . Това се случва, когато се опитаме да стартираме програма. Когато възникне грешката, JVM показва следното съобщение за грешка на конзолата:

 Error: Could not find or load main class ClassName 

Грешката се генерира най-вече, когато неправилно посочим името на класа по време на изпълнение на програмата.

Причини за възникване на грешка

Грешката се генерира, защото JVM не успява да зареди основния клас или името на пакета. Има някои други причини, които генерират същата грешка, както следва:

  • Класът е деклариран в грешен пакет.
  • Липсват зависимости от CLASSPATH.
  • Пътят на поддиректорията не съвпада с пълното име.
  • Грешната директория е на CLASSPATH.
  • CLASSPATH на приложението е посочен неправилно.
  • Също така възниква, когато сме направили грешка с аргумента на името на класа.

Решение на грешката

За да избегнем или разрешим грешката, трябва да посочим абсолютното име на пакета или името на класа.

Без опаковка

Основният клас е клас, в който е дефиниран методът main(). Нека създадем програма, която генерира и показва грешка на конзолата.

DemoClass.java

 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

Виждаме, че горната програма се компилира и работи успешно. Нека генерираме грешката, която не можа да намери или зареди основния клас в горната програма. За да генерираме и покажем грешката, имаме с правописна грешка името на класа, докато пишете java команда java DemoClas .

Не може да се намери или зареди основният клас в Java

Това се случва и когато уточним .клас разширение в края на името на класа.

 java DemoClass.class 

Не може да се намери или зареди основният клас в Java

За да избегнете грешката, не пишете .клас разширение в края на името на класа, докато използвате java команда.

 java DemoClass 

Грешката възниква и когато не поставим класа в правилната папка. На следващото изображение ние не сме вътре в демонстрация папка, където се намира класът. Това означава DemoClass.class файлът трябва да е в директорията C:demo .

Не може да се намери или зареди основният клас в Java

С пакет

В горната програма нека създадем пакет с име com.javatpoint . Това означава, че при компилирането на следната Java програма .class файлът ще бъде генериран вътре в C:democomjavatpointDemoClass.class .

Не може да се намери или зареди основният клас в Java

DemoClass.java

 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); } } 

Изход:

Не може да се намери или зареди основният клас в Java

Не забравяйте, че ако класът е в пакет, трябва да използваме пълното име на класа, включително името на пакета, в командата java.