GNU/Linux >> Znalost Linux >  >> Linux

Chyba:Nelze najít nebo načíst hlavní třídu

Pokud je třída v balíčku

package thepackagename;

public class TheClassName {
  public static final void main(String[] cmd_lineParams)  {
     System.out.println("Hello World!");
  } 
}

Potom zavolejte:

java -classpath . TheClassName

výsledkem je Error: Could not find or load main class TheClassName . Je to proto, že musí být voláno se svým plně kvalifikovaným názvem:

java -classpath . thepackagename.TheClassName

A toto thepackagename adresář musí existovat v cestě třídy. V tomto příkladu . , což znamená aktuální adresář, je celý classpath. Proto tento konkrétní příklad musí být volán z adresáře, ve kterém je thepackagename existuje.

Aby bylo jasno, název této třídy není TheClassName , Je to thepackagename.TheClassName . Pokus o provedení TheClassName nefunguje, protože žádná třída s tímto názvem neexistuje . Každopádně ne na aktuální cestě třídy.

Nakonec si všimněte, že se spustí zkompilovaná verze (.class), nikoli zdrojový kód ( .java) verze. Proto „CLASSPATH.“


Musíte se ujistit, že přidáte umístění vašeho .class soubor do vaší classpath. Pokud je tedy v aktuální složce, přidejte . k vaší classpath.Všimněte si, že oddělovač cesty třídy Windows je středník, tj. ; .


Linux
  1. Jak opravit chybu – qemu:nelze načíst BIOS počítače „bios.bin“?

  2. upozornění na zatížení:nelze najít vstupní symbol _start

  3. Nelze načíst dynamickou knihovnu 'libnvinfer.so.6'

  1. chyba:src refspec main neodpovídá žádnému [GIT]

  2. Chyba instalace modulu cPanel Perl PNGgraph

  3. chyba konfigurace:Nelze se připojit k systému boost_system

  1. CHECK_NRPE:Chyba – nelze dokončit navázání spojení SSL

  2. Nelze najít chybu pkg-config

  3. Chyba SQL Server JDBC v jazyce Java 8:Ovladač nemohl vytvořit zabezpečené připojení k serveru SQL pomocí šifrování Secure Sockets Layer (SSL)