import java.io.* klappt nich

  • Themenstarter Themenstarter HellFire1991
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
H

HellFire1991

Gast
Hallo ich hab da ein Problem, bei mir funktionieren keine Programme mit:
import java.io.*;

Als Entwicklungsumgebung habe ich den JavaEditor und habe bei der Konfiguration folgendes unter Interpreter angegeben:

SDK - Ordner: C:\Sun\SDK
Interpreter: C:\Sun\SDK\jdk\bin\java.exe
Parameter: (nichts)
Classpath–Admin: C:\Sun\SDK\jdk\jre\lib\rt.jar
Classpath-User: (nichts)

Muss ich bei Classpath-User nich noch andere .jar Dateien angeben, damit das klappt und wenn ja welche?
Achja Compilieren klappt, nur wenn ich das starte steht da immer:

Exception in thread "main" java.lang.NoClassDefFoundError


PS:Habt Nachsicht mit mir ich beschäftige mich erst seit kurzem mit java und kenn mich daher noch nicht so gut aus und antwortet bitte nich zu kompliziert.

thx im vorraus
 
das liegt daran, dass du die Klasse und die Datei nicht gleich genannt hast ... probier das mal aus

die Einstellungen stimmen so

mf.g
 
Nee daran liegt es nicht. Ich hab zum Beispiel die Datei Palindrom.java, in der ich eine Klasse mit dem Namen Palindrom erstelle. Alle anderen Programmen (ohne import java.io.*; ) laufen ja.

Code:
import java.io.*;

public class Palindrom
{
  public static void main(String[] args) throws IOException
  {
    BufferedReader Tastatur;
    Tastatur = new BufferedReader(new InputStreamReader(System.in));
    
    String wort;
    String wortausschnitt2;
    int unterschied;
    System.out.println("Wie lautet das Wort?");
    wort = Tastatur.readLine();
    wort = wort.toLowerCase();
    wortausschnitt2 = "";

    for(int lauf = wort.length();lauf>0;lauf--)
    {
      wortausschnitt2 = wortausschnitt2+wort.substring(lauf-1,lauf);
    }

    unterschied = wort.compareTo(wortausschnitt2);

    if(unterschied == 0)
    {
      System.out.println("Es handelt sich um ein Palindrom.");
    }
    else
    {
      System.out.println("Es handelt sich nicht um ein Palindrom.");
    }
  }
}
 
Ist doch egal andere Programme mit import java.io.*; laufen ja auch nich, wie zum Beispiel:

Code:
import java.io.*;

class Auto
{
  int startMeilen;
  int endMeilen;
  double gallonen;

  Auto(int startTacho, int endTacho, double galls)
  {
    startMeilen = startTacho;
    endMeilen   = endTacho;
    gallonen    = galls;
  }
  
  public double berechneMPG()
  {
    return (endMeilen - startMeilen) / gallonen;
  }
  
  public static void main( String[] args )
  {
    Auto Car = new Auto( 32456, 32810, 10.6 );
    System.out.println( "Meilen pro Gallonen: " + Car.berechneMPG() );
  }
}

Und Palindrom.java läuft in der Schule ja auch ( auch mit JavaEditor), deshalb kann es ja auch nich an dem Programm liegen.
 
bist du dir sicher, kannst du import java.io.*; löschen und dann die Klasse ausführen?

dass es in der Schule läuft bedeutet nicht viel, wenn du generell bei dir keine Programm starten kannst,

probiere mal
java -cp . Auto
 
Wenn ich import java.io.*; weglasse passiert genau das gleiche, als wie mit. Und ich hab ja nicht gesagt das bei mir generell keine Programme laufen, sondern nur die nicht, wo ich import java.io.*; brauche.
Und wo soll ich das mit dem java -cp . Auto ausprobieren. :bahnhof:
 
> Wenn ich import java.io.*; weglasse passiert genau das gleiche, als wie mit.

?
du sagtest vorhin, dass bei dir Programm ohne io laufen (im Gegensatz zu mit)
läuft das Programm nun ohne import java.io.*; oder nicht?

> Und wo soll ich das mit dem java -cp . Auto ausprobieren.

in der Konsole ganz normal,
aber gut, de benutzt JavaEditor, da kann ich nix zu sagen
 
Ja die Programme die kein import benötigen funktionieren alle, aber wenn ich bei einem Programm import java.io.*; weglasse, dieses Programm es aber benötigt damit es richtig läuft, kommt halt wieder die Fehlermeldung
 
HellFire1991 hat gesagt.:
[...] wenn ich bei einem Programm import java.io.*; weglasse, dieses Programm es aber benötigt damit es richtig läuft, kommt halt wieder die Fehlermeldung
Das kann nicht sein - wenn ein Programm den Import benötigt, dann lässt es sich nicht mehr übersetzen, wenn man das Import-Statement weglässt.

Im Palindrom-Beispiel gibt es im Java-Editor dann folgende Ausgabe:
Java-Editor hat gesagt.:
Compiliere C:\home\work\071023\Palindrom.java mit Java-Compiler
Palindrom.java:5:49: cannot find symbol
symbol : class IOException
location: class Palindrom
public static void main(String[] args) throws IOException
^
Palindrom.java:7:5: cannot find symbol
symbol : class BufferedReader
location: class Palindrom
BufferedReader Tastatur;
^
Palindrom.java:8:20: cannot find symbol
symbol : class BufferedReader
location: class Palindrom
Tastatur = new BufferedReader(new InputStreamReader(System.in));
^
Palindrom.java:8:39: cannot find symbol
symbol : class InputStreamReader
location: class Palindrom
Tastatur = new BufferedReader(new InputStreamReader(System.in));
^
4 errors

Hast Du denn unter "Start"->"Parameter..." eine Startklasse eingetragen?
 
Ja hab ich. Ich hab gerade gemerkt das gar keine Programme mehr Funktionieren. :?: :bahnhof: :?:
 
sag ich doch..

(kann aber leider zur JavaEditor-Konfiguration nix beitragen)
 
Tut mir Leid SlaterB, mein Fehler.
Ich hab den Fehler aber jetzt gefunden 😀 und zwar musste bei Classpath–Admin: C:\... vor dem C ein .; gesetzt werden.Danke für eure Mühe.
mfg HellFire1991
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben