Programm startet nachdem es compiled wurde nicht

Kirby.exe

Top Contributor
Ich weiß, dass eine Hilfe bei einem solchen Problem leichter als gesagt ist, jedoch habt ihr vielleicht ein paar Lösung Ideen 🙂

Wenn ich versuche die nachfolgende Klasse auszuführen, bekomme ich nichts...gar nichts, weder eine Fehlermeldung, eine Print oder sonstiges.

Es steht nur in der Kopfzeile der Konsole:
Code:
<terminated> MainTester [Java Application]/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home/bin/java (22.01.2020, 22:58:13)

Das ist die Klasse:
Java:
package javaPersonData;

import javaList.*;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class MainTester {

    public static void main(String[] args) throws IOException{
        List <Student> database_students = new List <Student>();
        List <Professor> database_professors = new List <Professor>();
        List <UniAngestellter> database_others = new List <UniAngestellter>();
        boolean check = true;
        
        while(check) {
            System.out.println("Welche Person wollen sie eingeben? Student, Professor oder Angestellter?");
            String databaseMode = readString();
            
            if(databaseMode.equals("Student")) {
                String prename = readString();
                String surname = readString();
                int age = readInteger();
                Ort adress = fillOrt();
                int matrikelnummer = readInteger();
                double zensurschnitt = readDouble();
                Student newStudent = new Student(prename, surname, age, adress, matrikelnummer, zensurschnitt);
                try {
                    database_students.addRear(newStudent);
                } catch (InstantiationException | IllegalAccessException e) {
                    e.printStackTrace();
                }
            }else if(databaseMode.equals("Professor")) {
                
            }else if(databaseMode.equals("Angestellter")) {
                
            }else {
                System.out.println("Diese Rolle existiert nicht!");
            }
            
            
            System.out.println("Wollen sie weiter Personen eingeben?");
            if(in.readLine().equals("n")) {
                check = false;
                System.out.println("Die Studenten Datenbank wird geladen...");
                try {
                    Thread.sleep(1500);
                } catch (InterruptedException e) {
                    System.out.println("Thread Sleep failed!");
                    e.printStackTrace();
                }
                database_students.printList();
                
                System.out.println("Die Professor Datenbank wird geladen...");
                try {
                    Thread.sleep(1500);
                } catch (InterruptedException e) {
                    System.out.println("Thread Sleep failed!");
                    e.printStackTrace();
                }
                database_professors.printList();
                
                System.out.println("Die Angestellten Datenbank wird geladen...");
                try {
                    Thread.sleep(1500);
                } catch (InterruptedException e) {
                    System.out.println("Thread Sleep failed!");
                    e.printStackTrace();
                }
                database_others.printList();
            }
        }
    }
    
    private static BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
    
    private static String readString() {
        try {
            return in.readLine();
        }catch(IOException e) {
            e.printStackTrace();
        }
        return null;
    }
    
    private static Integer readInteger() {
        try {
            return Integer.parseInt(in.readLine());
        }catch(IOException | NumberFormatException e) {
            e.printStackTrace();
        }
        return null;
    }
    
    private static Double readDouble() {
        try {
            return Double.parseDouble(in.readLine());
        }catch(IOException | NumberFormatException e) {
            e.printStackTrace();
        }
        return null;
    }
    
    private static Ort fillOrt() {
        Ort a = new Ort();
        System.out.println("Gib die Straße ein: ");
        a.straße = readString();
        System.out.println("Gib die Hausnummer ein: ");
        a.hausnummer = readInteger();
        System.out.println("Gib die Postleihzahl: ");
        a.postleihzahl = readInteger();
        return a;
    }
}
 
ich : hey Konsole, "debuge"..
Konsole : lies die Gebrauchsanweisung..
mkay..
Also es lag nicht daran, dass ich nicht weiß wie man mit Eclipse debuggt xD Ich weiß ehrlich gesagt nicht woran es lag...nachdem ich Eclipse 10 mal geschlossen habe und meinen PC neugestartet habe ging der debugger und jetzt geht auch das normal ausführen xD Mein Code war Fehlerfrei, naja fast...aus irgendeinem Grund geht er nicht in die Print-Schleife, aber ich habe schon eine Vermutung woran das liegt 🙂 Dankeschön 🙂
 
Bei Eclipse hilft bei mir manchmal den "Cache" zu löschen...

Oder ein Aufruf wie dieser
C:\eclipse\eclipse.exe -clean
 
Ich arbeite auch kaum mit eclipse. Aber ich nutze ungerne komplexe IDE interne Builds. Das hat eine sehr hohe Komplexität und man hat zu wenig Einblick....

Statt dessen habe ich immer ein Build Tool im Einsatz wie Gradle, Maven oder ant (bei Java) oder eben, was sich sonst so anbietet (make, cmake .... zur Not eigenes kleines Script was die Übersetzung macht was z.B. bei TeX zum Einsatz kommt....)

Bei sowas reduziert sich die Fehlersuche oft auf übersetzen ohne IDE (inclusive einem Clean!) und dann ggf. löschen der IDE Parts und neuer Import ....
 
Ich arbeite auch kaum mit eclipse. Aber ich nutze ungerne komplexe IDE interne Builds. Das hat eine sehr hohe Komplexität und man hat zu wenig Einblick....

Statt dessen habe ich immer ein Build Tool im Einsatz wie Gradle, Maven oder ant (bei Java) oder eben, was sich sonst so anbietet (make, cmake .... zur Not eigenes kleines Script was die Übersetzung macht was z.B. bei TeX zum Einsatz kommt....)

Bei sowas reduziert sich die Fehlersuche oft auf übersetzen ohne IDE (inclusive einem Clean!) und dann ggf. löschen der IDE Parts und neuer Import ....
Ich wollte in der vorlesungsfreien Zeit gerne umsteigen...z.B. auf Visual Code
 
Meine pers. Sicht - nur für den Fall, dass es evtl. interessant ist:

Also gegen Eclipse spricht nicht wirklich etwas. Du solltest aus meiner Sicht nur eines der üblichen Build Systeme nutzen (also gradle oder maven). Eclipse sollte das auch unterstützen.

Dann kannst Du an IDEs nutzen, was immer du möchtest. Und du kannst wechseln so oft du möchtest. Ich habe mich nur gegen diese integrierten Projekte ausgesprochen ... bei Eclipse sind dies diese .classpath und .project Dateien meine ich. Bei Intellij sind das so iml Dateien und .idea Verzeichnis und so ...

Das wird halt wichtig, wenn man auch mit Anderen zusammen arbeitet. Nur weil Du IDE x nutzen willst, muss ich das ja nicht auch so handhaben....

Visual Studio Code ist aus meiner Sicht viel zu beschränkt. Mag am Anfang evtl. ok sein, aber beim Thema Java IDEs wäre das eine IDE, die mir nicht einfallen würde ...

Die üblichen Kandidaten sind aus meiner Sicht: Eclipse, IntelliJ und Netbeans. Ich selbst nutze IntelliJ weil mir diese IDE am meisten zusagt.
 
So ein kleines Script nutz ich auch, heißt emacs 🙂
Den gibt es immer noch? Irgendwie sind manche Tools einfach nicht tot zu kriegen ... Aber emacs hat mir nie wirklich zugesagt. Damals hatte ich den vi für mich auserkoren und emacs war einfach nur etwas für Leute, die ihren Hauptspeicher nicht sinnvoller nutzen konnten 🙂
 
Also... meine Sicht. Ein Neustart in solchen Fällen ist eigentlich nicht unbedingt nötig. Wenn noch "Schatten"-"Instanzen" von Eclipse geöffnet sind, so kannst Du diese wie gewohnt per Task-Manager killen. Ich hatte aber auch schon Programme, mit zum Besenstil inneren Klassen, die sich zwar per command line compilen ließen, aber mit den Eclipse internen Inline Compilern nicht mehr übersetzen ließen - denn Eclipse ist eben auch nicht unfehlbar.
 

Zurück
Oben