Eclipse “Fout: kan hoofdklasse niet vinden of laden”

Ik heb een project in eclipse op mijn laptop dat ik naar Git heb gepusht https:// github.com/chrisbramm/LastFM-History-Graph.git

Het werkt volledig op mijn laptop en werkt/bouwt zonder problemen, maar op mijn desktop geeft Eclipse de fout niet

Fout: kon de hoofdklasse lastfmhistoryguis.InputPanel niet vinden of laden

Ik heb geprobeerd het project op te bouwen vanuit:

Project>Build Project

Maar er gebeurde niets. Ik heb de variabelen PATHop deze computer ingesteld op JRE6, JRE7 en JDK 1.7.0, hoewel deze niet op mijn laptop zijn ingesteld.

Ik had een Jar-bestand (last.fm-bindings-0.1.1.jar) in mijn .classpath-bestand dat zich in C: \Users\Chris\Downloadsmap op mijn laptop en daarom was het niet opgenomen in de git-boom die ik onlangs in de projectmap heb geplaatst en heb vastgelegd, maar ik weet niet zeker of ik het goed heb gedaan.
Zou dit ook een probleem veroorzaken, maar er zit geen hoofdargument in.

Ik kan er nu niet achter komen wat ik moet controleren/wijzigen.


Antwoord 1, autoriteit 100%

In je klassenpad gebruik je een absoluut pad, maar je hebt het project verplaatst naar een nieuwe machine met mogelijk een andere bestandsstructuur.

In je klassenpad moet je daarom (en waarschijnlijk in het algemeen als je JARS met je project gaat bundelen), relatieve paden gebruiken:

In uw .classpath
wijzigen

<classpathentry kind="lib" path="C:/Users/Chris/Downloads/last.fm-bindings-0.1.1.jar" sourcepath=""/><classpathentry kind="lib" path="C:/Users/Chris/Downloads/last.fm-bindings-0.1.1.jar" sourcepath=""/>

naar

<classpathentry kind="lib" path="last.fm-bindings-0.1.1.jar"/>

Antwoord 2, autoriteit 92%

Als u een Java-klasse maakt met public static void main(String[] args), zal Eclipse die hoofdmethode voor u uitvoeren door met de rechtermuisknop op het bestand zelf te klikken, of op het bestand in de projectverkenner en kies vervolgens:

“Uitvoeren als” -> “Java-toepassing.”

Zodra u dit doet, slaat Eclipse informatie over uw klas op, zodat u de klas gemakkelijk opnieuw kunt uitvoeren vanuit het menu Uitvoeren als (groene afspeelknop op de werkbalk) of vanuit het dialoogvenster Configuraties uitvoeren.

Als u vervolgens de java-klasse VERPLAATST (handmatig of hoe dan ook), kies dan opnieuw

“Uitvoeren als” -> “Java-toepassing,”

vanaf de nieuwe locatie zal Eclipse de oorspronkelijke opgeslagen configuratie uitvoeren en proberen deze klasse op te roepen vanaf de oorspronkelijke locatie, wat deze fout veroorzaakt.


OPLOSSING:
Voor mij was de oplossing om naar de run-configuraties te gaan (Groene Play-knop -> Run-configuraties) en alle verwijzingen naar de klasse te verwijderen. De volgende keer dat u

. uitvoert

“Uitvoeren als” -> “Java-toepassing”

Eclipse zal een nieuwe configuratie schrijven voor de verplaatste klasse, en de fout zal verdwijnen.


Antwoord 3, autoriteit 90%

tl;dr:
Reinig je hele bouwpad en alles wat je er ooit handmatig aan hebt toegevoegd. Dit omvat aanvullende bronnen, projecten, bibliotheken.

  • Project -> Schoon
  • Zorg ervoor dat Project -> Automatisch bouwen is actief
  • Project -> Eigenschappen -> Java-opbouwpad -> Bibliotheken: Verwijder alle externe bibliotheken die je ooit hebt toegevoegd. Verwijder geen standaardbibliotheken zoals de JRE-systeembibliotheek.
  • Probeer nu je hoofdles te geven. De fout “klasse kon niet worden gevonden / geladen” zou verdwenen moeten zijn. Probeer uw externe bibliotheken/jars een voor een toe te voegen.

Reden hierachter: de compiler had problemen met het koppelen van de bibliotheken aan het project. Het is mislukt en leverde een verkeerde foutmelding op.

In mijn geval had het zoiets moeten zijn als “Kan AutoHotkey.dll niet toevoegen aan het buildpad”, omdat de compiler daardoor mislukte.


Als dit nog steeds niet werkt, bekijk dan de ingebouwde ErrorLog van Eclipse:

Venster -> Toon weergave -> Algemeen -> Foutenlogboek


Antwoord 4, autoriteit 73%

Ik heb alle bovengenoemde dingen gedaan, maar geen van alle werkte voor mij

Mijn probleem is als volgt opgelost:

  1. Klik met de rechtermuisknop op uw Project > Eigenschappen > JavaBuildPath > Bibliotheken.
  2. Verwijder het jar-bestand met een rode vlag erop.
  3. Als het probleem aanhoudt, probeer dan de onderstaande oplossing. Dit werkte voor mij toen ik voor de tweede keer met dit probleem werd geconfronteerd:
    1. Klik met de rechtermuisknopProject > Eigenschappen > Java-opbouwpad > Bibliotheken
    2. Bibliotheek verwijderen
    3. Bibliotheek toevoegen. (Kies de JRE-systeembibliotheek )

Antwoord 5, autoriteit 43%

Ik ondervond een soortgelijk probleem in mijn maven-webapp-project na bijna een uur te hebben doorgebracht, ik vond een oplossing die voor mij werkte. Ik typte het volgende maven-commando en het werkte

mvn schone installatie -U
Ik weet de exacte reden niet.


Antwoord 6, autoriteit 20%

Ik neem aan dat je het project in je desktop eclipse-installatie hebt geïmporteerd? Als dat het geval is, moet u gewoon Project > Schoon. Bouw vervolgens uw project opnieuw op. Werkte als een tierelier voor mij.


Antwoord 7, autoriteit 20%

ZEER VOORZICHTIG: Hiermee wordt uw project losgekoppeld van de werkruimte. Je moet al je projecten opnieuw importeren

Ik had hetzelfde probleem en heb het opgelost met:

Eclipse Mars
Egit
Github
Maven Project

Het probleemwas dat ik mijn maven-project beschikbaar maakte voor github. Het verplaatstmijn project naar mijn github-map.

Oplossing:

  • Eclipse sluiten
  • Verwijder de metadatamap in uw werkruimte
  • Herstart Eclipse

Het startscherm wordt weergegeven.

  • Sluit het startscherm
  • Klik met de rechtermuisknop in pakketverkenner
  • Kies “maven-project importeren”,
  • Navigeer naar je github-map en importeer het maven-project.

Hierna is mijn project met succes samengesteld.


Antwoord 8, autoriteit 16%

Controleer of uw project een builder heeft door:

  • controleer de projecteigenschappen (in de “pakketverkenner”, klik met de rechtermuisknop op het project, selecteer “eigenschappen”), daar is de tweede sectie “Builders”, en het zou de standaard “Java Builder” moeten bevatten
  • of kijk in het “.project” bestand (in …/workspace/yourProjectName/.project) de sectie “buildSpec” mag niet leeg zijn.

Er moeten andere manieren zijn, maar wat ik deed was:

  • verduistering afsluiten
  • bewerk het .project-bestand om de sectie “buildSpec” toe te voegen
  • verduistering opnieuw starten

Een correct minimaal java “.project”-bestand zou er als volgt uit moeten zien:

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
        <name>myProjectName</name>
        <comment></comment>
        <projects>
        </projects>
        <buildSpec>
                <buildCommand>
                        <name>org.eclipse.jdt.core.javabuilder</name>
                        <arguments>
                        </arguments>
                </buildCommand>
        </buildSpec>
        <natures>       
                    <nature>org.eclipse.jdt.core.javanature</nature>
        </natures>      
</projectDescription>

Antwoord 9, autoriteit 16%

Nou, het volgende werkte voor mij…

  1. Ging naar de projectmap (in workspace)
  2. Verwijder vervolgens de map bin
  3. Vervolgens, Opgeschoond project / projecten (in Eclipse)
  4. gebouwd/gerund vanuit Eclipse.

Antwoord 10, autoriteit 11%

Hetzelfde is mij een paar keer overkomen, de enige manier om dit op te lossen was door de metadatamap te verwijderen. Gelukkig heb ik een andere manier gevonden.

Probeer naar properties > Java-opbouwpad > Tabblad Bestellen en exporteren > alles selecteren(of probeer daar met de selectievakjes te spelen).

Hierdoor zou het volledige project opnieuw moeten worden opgebouwd en zou Eclipse de hoofdklasse moeten zien.

Toevoeging: ik heb gemerkt dat deze bug optreedt wanneer je veel projecten in een werkruimte hebt en sommige ervan verkeerd zijn geconfigureerd (rood uitroepteken verschijnt). Het oplossen van het projectopbouwpad en andere instellingen (zelfs als dit project niet gerelateerd is aan het project waarmee u problemen heeft) zou een probleem moeten oplossen.


Antwoord 11, autoriteit 11%

Voor mij was de reden dat deze fout begon te verschijnen, te wijten aan het feit dat classpath de limiet op Windows overschreed. Toen ontdekte ik de optie “Gebruik tijdelijke JAR om klassenpad op te geven (om beperkingen van de lengte van het klassenpad te vermijden)”. Het selecteren van deze optie loste het probleem voor mij op. De optie bevindt zich in Configuratie uitvoeren/foutopsporing, tabblad Klaspad, zie de afbeelding hieronder.

voer hier de afbeeldingsbeschrijving in


Antwoord 12, autoriteit 9%

Mijn Main classkon niet worden gevonden of het geladen probleem wordt veroorzaakt door een interessante reden.

In ons project gebruiken we Mavenals build-tool en mijn Main classextendseen klasse, die zich op de class pathmaar het bereik was test, terwijl de Main classniet onder het testpakket valt.

Als je hoofdklasse een klasse extends, probeer dan eerst je Main classuit te voeren door het gedeelte extendste verwijderen. Als het werkt, zul je in ieder geval begrijpen dat het probleem niet ligt aan de run configurationof eclipse, maar aan de klasse, je Main classextends.


Antwoord 13, autoriteit 9%

Als je code goed is en je weet dat je een Eclipse-probleem hebt, zal dit het probleem oplossen.

Je zou eenvoudig $yourproject/.classpath , $yourproject/.project en $yourworkspace/.metadata kunnen verwijderen. Iemand anders noemde deze optie. Het zal echter je hele werkruimte opblazen. In plaats daarvan:

  1. Verwijder .classpath en .project uit uw project
  2. Verwijder je project in eclipse. NIET aanvinkenproject verwijderen
    inhoud op schijf.
  3. Ga nu in een bestandsverkenner naar $yourworkspace/.metadata.
  4. Zoek naar $yourprojectname
  5. Verwijder alles wat je vindt. Het zou veilig moeten zijn om iets in de .metadata-directory te verwijderen.
  6. In verduistering: Bestand > > Algemeen > Projecten uit map of archief > $uwproject > afmaken
  7. Klik met de rechtermuisknop op uw project > eigenschappen > Java-opbouwpad > Tabblad Bron
  8. Selecteer alle bronmappen, verwijder.
  9. Map toevoegen, src selecteren (hoe je src-map ook heet) en toevoegen
  10. Ga naar het tabblad Bibliotheken
  11. Voeg hier eventuele potten toe aan je bouwpad. Er zouden nu geen fouten meer in uw project moeten zijn.
  12. Voer uw project uit zoals u dat normaal zou doen.

Antwoord 14, autoriteit 9%

dit zou jdk-bibliotheken kunnen veroorzaken als u in jre had geïmporteerd

dit overkomt mij, dus controleer de geïnstalleerde jre jars

klik in eclipse op Windows > Voorkeuren > Java > Jres > geïnstalleerd klik op Jre en bewerk daarna kijk in de jar-lijst en zorg ervoor dat niets van jdk of beschadigd is, voer hier de afbeeldingsbeschrijving in


Antwoord 15, autoriteit 7%

Dit probleem wordt ook veroorzaakt wanneer u speciale tekens in uw werkruimtepad hebt. Ik had mijn werkruimte in mijn persoonlijke map en de naam was in het Grieks, dus het werkte niet. Ik heb mijn werkruimte gewijzigd, bevat nu alleen Engelse tekens in het pad en nu is het project zonder problemen gebouwd.


Antwoord 16, autoriteit 7%

Als u eclipse gebruikt, zullen de volgende stappen uw probleem oplossen:

Ga naar Uitvoeren -> Configuraties uitvoeren -> Hoofdklasse zoeken -> Zoek uw klas handmatig -> Toepassen -> Uitvoeren


Antwoord 17, autoriteit 7%

Ik had deze fout. Het was omdat ik
static void main(String[] args)
in plaats van
public static void main(String[] args)

Ik heb er bijna een uur over gedaan om erachter te komen.

Opmerking:het enige verschil is dat ik mainniet heb verklaard als public


Antwoord 18, autoriteit 7%

Voer de volgende stappen uit om deze fout op te lossen:

Stap 1: Open het bestand .project.

Stap 2: Controleer twee tags…

   a) <buildSpec>
    b) <natures>

Stap 3: Als de bovengenoemde tags geen inhoud bevatten, zal de bovenstaande fout zeker optreden.

Stap 4: Voeg de volgende inhoud toe aan elke tag om de bovenstaande fout op te lossen.

Voor <buildSpec>:

<buildSpec>
    <buildCommand>
        <name>org.eclipse.jdt.core.javabuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
</buildSpec>

Voor <natures>:

<natures>
    <nature>org.eclipse.jdt.core.javanature</nature>
</natures>

Stap 5: Sla je bestand op door op ctrl + s te drukken.

Stap 6: Voor de zekerheid sluit u het project één keer en opent u het opnieuw.

Stap 7: Dat is alles. Je bent klaar om te rocken!!!

Vermeld in opmerkingen of de oplossing nuttig was.

Bedankt.


Antwoord 19, autoriteit 7%

Ik had hetzelfde probleem met het juiste .classpath-bestand en ontdekte al snel dat het niet het .classpath-bestand is dat wordt geteld (nadat ik dit probleem had opgelost, vervang ik het werkbare .classpath-bestand door het originele, het project werkte nog steeds, wat betekent dat het .classpath-bestand niet het geval was)

Omdat het een Maven-project is, heb ik alleen het volgende gedaan:

  1. mvn eclipse:clean
  2. verduisteringsproject verwijderen
  3. importeer het project
  4. klaar

Antwoord 20, autoriteit 5%

Ik kom hetzelfde probleem tegen, maar in mijn geval werd het veroorzaakt door een ontbrekende (lege) bronmap (deze bestaat in het oorspronkelijke project, maar niet in de GIT-repository omdat deze leeg is).

Na het aanmaken van de ontbrekende map werkt alles.


Antwoord 21, autoriteit 5%

Ik kwam deze fout vandaag tegen omdat ik een hello world-programma heb opgezet en vervolgens een nieuw programma in hetzelfde bestand heb geknipt en geplakt. Om het probleem op te lossen dat ik geen hallo wereld kon vinden zoals de laatste heette, klikte ik op Run-> Voer Configuraties uit en toen klikte ik onder Hoofdklasse op zoeken en het vond mijn nieuwe klassenaam en verving het door de juiste nieuwe naam in de tekst die ik plakte. Dit is een beginnersprobleem dat ik ken, maar het is ook gemakkelijk op te lossen. Ik hoop dat dit iemand helpt!
Douglas


Antwoord 22, autoriteit 5%

Dit gebeurt meestal, omdat Eclipse de .class-bestanden opschoont, maar ze niet opnieuw opbouwt. Controleer de map bin, deze zou leeg moeten zijn. Dan moet u controleren of er nog iets anders is waardoor de build mislukt. Je hebt misschien wat potten in classpath toegevoegd, die Eclipse mogelijk niet kan vinden.


Antwoord 23, autoriteit 5%

Ga naar uw pakketverkenner en druk op F5, of voor sommige laptops fn+F5. De reden is dat Eclipse denkt dat de bestanden ergens zijn, maar de bestanden zijn eigenlijk ergens anders. Door het te verversen, zet je ze allebei op dezelfde pagina. Maak je geen zorgen, je verliest niets, maar als je extra voorzichtig wilt zijn, maak dan gewoon een back-up van de bestanden uit je Java-projectenmap naar een veilige plek.


Antwoord 24, autoriteit 5%

Dit zijn de eenvoudige stappen die me hebben geholpen om dit probleem op te lossen.

  1. Sluit de zonsverduistering
  2. Verwijder de map “.metadata” in uw werkruimte. (mogelijk verborgen map)
  3. Open de eclips (deze maakt automatisch de map “.metadata” aan in uw werkruimte)
  4. Probeer het programma uit te voeren.

Antwoord 25, autoriteit 5%

Controleer het foutenlogboek van de werkruimte (Windows-> Toon weergave -> Foutlogboek). Als je ziet dat een van de geïmporteerde jars beschadigd is, verwijder dan de corresponderende repositorymap en importeer opnieuw.


Antwoord 26, autoriteit 5%

Er zijn twee soorten oplossingen voor hetzelfde.

(1) Ga naar configuraties uitvoeren: – run->run configurations
Op het tabblad Klaspad:

Selecteer Geavanceerd
Voeg toe waar Eclipse gewoonlijk de *.class voor de projecten plaatst, die zich in de prullenbak bevindt. Dus ik heb de bin-map voor het project toegevoegd.

(2) Als de eerste oplossing niet werkt, betekent dit dat de jar die u naar uw project verwijst het pad volgt van uw lokale Maven-repo die niet wordt bijgewerkt naar uw project, dus u kunt beter de jar van die lokale maven repo en kopieer het, plak het in een nieuw project of download het gewoon van een willekeurige site en configureer het in je buildpad.

Ik hoop dat het helpt.


Antwoord 27, autoriteit 5%

Ik kreeg deze fout ook, net nadat ik wat bronnen had verplaatst. Toen ik het foutenlogboek controleerde, zag ik dat Eclipse geen build kon maken omdat het geen bestand/map kon verwijderen. Probeer handmatig de map “bin” (of hoe het ook voor u heet) te verwijderen.


Antwoord 28, autoriteit 2%

Ik had net dit probleem nadat ik eerst het probleem had dat Windows 8 weigerde mijn pad bij te werken, ongeacht waar ik JAVA_HOME op instelde – java -version rapporteerde de laatste JDK in plaats van degene die ik in JAVA_HOME had opgeslagen. Ik heb dat eindelijk werkend gekregen door ‘%JAVA_HOME%/bin;’ aan de voorkant van de pad omgevingsvariabele in plaats van aan het einde. Toen lanceerde ik Eclipse en plotseling kon het mijn hoofdklasse niet vinden, terwijl het daarvoor goed werkte. Wat ik deed om het te repareren, was naar de projecteigenschappen gaan, de bestaande JRE-bibliotheek van het tabblad Bibliotheken verwijderen, een nieuwe JRE toevoegen door de knop “Bibliotheek toevoegen” te selecteren en vervolgens de aanwijzingen volgen om JRE 7 als mijn standaard JRE te installeren. Nu werkt alles weer.


Antwoord 29, autoriteit 2%

Ik vond een andere oplossing in mijn geval dit probleem: Eclipse->Preferences->Java->Installed JREen druk vervolgens op de knop Zoeken. Selecteer de map in Linux /usren Eclipse heeft alle JVM gevonden.

Selecteer een andere JVM die te actueel is. Het is opgelost voor mijn geval.


Antwoord 30, autoriteit 2%

Ik had hetzelfde probleem nadat ik een nieuw pakket (“tabellen”) in mijn project had gemaakt.

Ik ging naar Window -> Show View -> General -> Error Logen ik heb een fout gelezen:

JavaBuilder handling ImageBuilderInternalException while building: PizzaService
org.eclipse.core.internal.resources.ResourceException: Resource '/PizzaService/bin/tables' already exists.

het bleek dat ik een tekstbestand had in een andere bronmap met dezelfde naam als dit nieuwe pakket. Dus ik heb de naam van het tekstbestand gewijzigd van “Tables” in “Tabless” en ik kan mijn project opnieuw uitvoeren.

Hopelijk helpt dit.

Other episodes