A javítás ' a rendszer nem találja a megadott elérési utat ' hiba a Java-on


Legjobb válasz

Engedje meg, hogy gyors tippet adjak: sokkal több választ és értelmesebb válaszolót kap, ha beírja azt a kódot, amely a hiba (kivétel), valamint a tényleges hiba (kivétel verem nyomkövetés).

Ennek ellenére ez a kivétel azt jelenti, hogy az olvasni vagy írni kívánt fájl nem létezik. A Java-ban a könyvtárak fájlnak számítanak, így ez azt is jelentheti, hogy nem létezik az a könyvtár, ahonnan olvasni vagy amire írni akarsz.

Mindkét esetben a fájlrendszer elérési útja hibás. Ez különösen gyakori, ha relatív utakat használunk. A kód végrehajtásakor nem mindig nyilvánvaló, hogy mi az aktuális könyvtár. A hibaelhárítást egy jól ismert, könnyen megtalálható hely abszolút elérési útjának használatával kezdheti meg. Például, ha egy fájlt (a.txt) próbál olvasni, tegye azt közvetlenül a C meghajtóra, hogy a „C: /a.txt” néven hivatkozhasson rá.

Ha megpróbálja Ha viszonylagos elérési utat tartalmazó fájlt szeretne olvasni, akkor mindig kinyomtathatja az abszolút elérési utat, hogy lássa, megfelel-e az elvártnak. File file = új File (“a.txt”); Ezután nyomtassa ki a System.out.println (file.getPath ()) paranccsal, és ellenőrizze, hogy ez a hely az Ön által várt hely, és hogy a fájl ott van-e.

Válasz

Kérdés : Hogyan lehet megoldani a következő hibát egy Java alkalmazás esetében az Eclipse programban: “A Java.lang.Object típus nem oldható fel. A szükséges .class fájlokról közvetett módon hivatkozunk.” ?

Úgy érzem, hogy ez nem pusztán az Eclipse-ben van, hanem egy maven, gradle, borostyán, hangya vagy valamilyen más, az Eclipse-ben futtatott build / dependency manager eszköz projektben – de én Úgy válaszolok rá, mintha csak az Eclipse lenne az első.

Ez a hiba általában azt jelenti, hogy a JRE nem található. Az Eclipse általában rendelkezik a Java Runtime beállításával – jelenleg nem vagyok Eclipse rendszeren (és nincs kedvem pazarolni az időt a telepítéséhez, CSAK hogy beállítást keressek valakinek), de a beállításokban ott kell lennie legyen Java futásidejű beállítás, amely arra a mappára mutat, ahol a Java van – általában olyan, mint a C: \ Program Files \ Java \ JDK1.12.XY {Esetleg \ bin vagy \ lib} Windows rendszeren. Ha egy mappa van beállítva, győződjön meg arról, hogy van valami abban a mappában (hogy a mappa létezik először).

Ha ez minden jól néz ki, – ezt nem kellene megtennie, de esetleg ellenőrizze a JAVA\_HOME környezeti változó a létezés és érvényesség szempontjából.

Egy Maven projektben (nem ismerem a Gradle-t, Ivy-t stb.) Beállíthatja a Java fordítási (forrás és cél) verzióit is, és ha ez olvashatatlan vagy nincs értelme, mint az1.99f , akkor ezt a hibát fogja kapni. A fordító modulban általában a forrást és a célt egyaránt 1,8, 1,9, 1,10, 1,11 vagy 1,12 értékre állítom (mivel a legtöbb gépemen 12-es verzió van).

Nem tudom, mi más elmondani neked, amint éppen elmondtam neked, amit tapasztaltam, és ezt általában elég könnyű megoldani.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük