logo

Kunne ikke finne eller laste inn hovedklassen i Java

Det er svært vanlig å møte feil og unntak i programmeringsspråket Java. Men noen av de mest populære og vanlige feilene blir ofte møtt av programmerere som er nye innen programmering. Blant disse feilene, kunne ikke finne eller laste inn hovedklassen i Java, er en av dem som forekommer vanligvis. Feilen indikerer at java kommando mislyktes for å finne eller laste inn hovedklassen . Det oppstår når vi prøver å kjøre et program. Når feilen oppstår, viser JVM følgende feilmelding på konsollen:

 Error: Could not find or load main class ClassName 

Feilen genereres for det meste når vi feil spesifiserer klassenavnet ved kjøretidspunktet for programmet.

Årsaker til å oppstå feil

Feilen genereres fordi JVM klarer ikke å laste inn hovedklassen eller pakkenavnet. Det er noen andre årsaker som genererer den samme feilen, som følger:

  • Klassen har blitt deklarert i feil pakke.
  • Avhengigheter mangler i CLASSPATH.
  • Underkatalogbanen samsvarer ikke med det fullstendige navnet.
  • Feil katalog er på CLASSPATH.
  • CLASSPATH for applikasjonen er feil spesifisert.
  • Oppstår også når vi har gjort en feil med klassenavnargumentet.

Løsning på feilen

For å unngå eller løse feilen, må vi spesifisere det absolutte pakkenavnet eller klassenavnet.

Uten pakke

Hovedklassen er en klasse der main()-metoden er definert. La oss lage et program som genererer og viser en feil på konsollen.

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

Produksjon:

Kunne ikke finne eller laste inn hovedklassen i Java

Vi ser at programmet ovenfor kompilerer og kjører vellykket. La oss generere feilen som kunne ikke finne eller laste inn hovedklassen i programmet ovenfor. For å generere og vise feilen har vi feilstavet klassenavnet mens du skriver inn java kommando java DemoClas .

Kunne ikke finne eller laste inn hovedklassen i Java

Det oppstår også når vi spesifiserer .klasse utvidelse på slutten av klassenavnet.

 java DemoClass.class 

Kunne ikke finne eller laste inn hovedklassen i Java

For å unngå feilen, ikke skriv .klasse utvidelse på slutten av klassenavnet mens du bruker java kommando.

 java DemoClass 

Feilen oppstår også når vi ikke plasserer klassen i riktig mappe. I det følgende bildet er vi ikke inne i demo mappen der klassen befinner seg. Det betyr DemoClass.class filen må være inne i katalogen C:demo .

Kunne ikke finne eller laste inn hovedklassen i Java

Med pakke

I programmet ovenfor, la oss lage en pakke som heter com.javatpoint . Det betyr at ved kompilering av følgende Java-program vil .class-filen bli generert inne i C:democomjavatpointDemoClass.class .

Kunne ikke finne eller laste inn hovedklassen i 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); } } 

Produksjon:

Kunne ikke finne eller laste inn hovedklassen i Java

Husk at hvis klassen er inne i en pakke, må vi bruke hele klassenavnet, inkludert pakkenavnet, i java-kommandoen.