Bedste svar
Tillad mig at give dig et hurtigt tip: du får mange flere svar og mere meningsfulde svarere, hvis du inkluderer den kode, der forårsager fejl (undtagelse) såvel som den faktiske fejl (undtagelse stak spor).
Når det er sagt, betyder denne særlige undtagelse, at den fil, du prøver at læse eller skrive, ikke findes. I Java betragtes mapper som filer, så det kan også betyde, at den mappe, du forsøger at læse fra eller skrive til, ikke findes.
Uanset hvad er en filsystemsti forkert. Dette er især almindeligt, når du bruger relative stier. Det er ikke altid indlysende, hvad den aktuelle mappe er, når koden udføres osv. Du kan starte fejlfinding ved at bruge en absolut sti til et velkendt, let at lokalisere sted. Hvis du f.eks. Prøver at læse en fil (a.txt), skal du placere den lige på C-drevet, så du kan henvise til den som “C: /a.txt”.
Hvis du prøver for at læse en fil med en relativ sti, kan du altid udskrive den absolutte sti for at se, om den vurderes til det, du forventer. Filfil = ny fil (“a.txt”); Udskriv den derefter med System.out.println (file.getPath ()), og se om den placering er, som du forventer, at den skal være, og om filen er der
Svar
Spørgsmål : Hvordan kan følgende fejl løses for et Java-program i formørkelse: “Typen Java.lang.Object kan ikke løses. Det henvises indirekte til krævede .class-filer.” ?
Jeg har en fornemmelse af, at dette ikke kun er i Eclipse, men enten et maven, gradle, vedbend, myre eller et andet projekt / build-afhængigheds manager værktøjsprojekt, der køres i Eclipse – men jeg Jeg svarer på det, som om det først er formørkelse.
Denne fejl betyder typisk, at JRE ikke findes. Eclipse har typisk en indstilling til Java Runtime – Jeg er ikke på et system m / Eclipse lige nu (og har ikke lyst til at spilde tiden til at installere det BARE for at lede efter en indstilling til nogen), men i indstillingerne skal der være en Java Runtime-indstilling, og det vil pege på den mappe, hvor din Java er – normalt som C: \ Program Files \ Java \ JDK1.12.XY {Eventuelt \ bin eller \ lib} på Windows. Hvis der er angivet en mappe der, skal du sørge for, at der er noget der i den mappe (at mappen findes først).
Hvis det hele ser godt ud, – skal du ikke gøre dette, men måske tjekke din JAVA\_HOME miljøvariabel for eksistens og gyldighed.
I et Maven-projekt (jeg kender ikke Gradle, Ivy osv.) Kan du indstille Java-kompilationsversionerne (både kilde og mål), og hvis det er ulæseligt eller giver ikke mening som så får du denne fejl. Jeg indstiller typisk både kilde og mål i kompileringsmodulet til både 1.8, 1.9, 1.10, 1.11 eller 1.12 (da jeg har version 12 på de fleste af mine maskiner).
Jeg ved ikke hvad der ellers at fortælle dig, som jeg lige har fortalt dig, hvad jeg har oplevet, og det er normalt ret let at løse.