xlsx File auslesen Exception occured

maechi

Mitglied
Ich will aus einer .xlsx datei Namen(Spalte C = 2) und Mobilfunknummer(AA = 26) auslesen. Wenn ich das Programm nicht exportiere sondern von IntelliJ(aktuellste Version) aus starte funktioniert alles perfekt. Wenn ich es exportiere kommt direkt beim Start eine Meldung vom JVM Launcher "A Java Exception has occurred." Das Programm ist gewachsen und diese Zusatzfunktion wurde hinzugefügt. Wenn ich diese wieder auskommentiere funktioniert auch der Export als .jar File. Hiermal der Teil welcher Probleme bereitet:
Java:
//Namen zu den Rufnummern anzeigen
try {

    //Zum Einlesen der Namen zu den Rufnummern
    XSSFWorkbook wb = new XSSFWorkbook(new FileInputStream(namensListe));
    XSSFSheet sheet = wb.getSheetAt(0);
    int fg = 0;
    for (int i = 1; i < sheet.getLastRowNum(); i++) {
        XSSFRow row = sheet.getRow(i);

        try {
            Cell rufnummerCell = row.getCell(2);
            String rufnummer = ("0" + rufnummerCell.toString().substring(2));

            falscheRufnummer = rufnummer;

            Cell nameCell = row.getCell(26);
            String name;
            if (nameCell == null) {
                name = rufnummer;
            } else {
                name = nameCell.toString();
            }
            rufnummerAndName.put(rufnummer, name);

        } catch (Exception e) {
            //
            JOptionPane.showMessageDialog(null, e.getMessage() + "\nEs handelt sich dabei um diese Rufnummer: " + falscheRufnummer + " in Zeile " + i++);
            fg++;
        }

    }
    if (fg>0) {
        System.out.println(fg);
        //JOptionPane.showMessageDialog(null, fg + " der Einträge aus der Namensliste konnte sind fehlerhaft - " + fehler);
    }

    wb.close();
} catch (Exception e) {
    JOptionPane.showMessageDialog(null, "Die Excelliste mit den Namenszuordnung ist fehlerhaft");
    System.out.println(e.getStackTrace());
}

Da beim Start direkt Fehler erscheinen hier auch mal noch meine Main-Methode:
Java:
public static void main(String[] args) throws Exception {
    Hauptfenster H1 = new Hauptfenster();
    H1.setContentPane(new Hauptfenster().Panel2);
    H1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    H1.setSize(1350, 700);
    H1.setLocationRelativeTo(null);
    H1.setVisible(false);
    H1.setTitle("O2 Rechnungen auswerten");
    H1.setVisible(true);

    setH1(H1);
}

PS: Hoffentlich das richtige Unterforum :) ist mein erster Post
 

Joose

Top Contributor
Wenn ich es exportiere kommt direkt beim Start eine Meldung vom JVM Launcher "A Java Exception has occurred."
Hier wäre es interessant zu erfahren um welche Exception es sich handelt inkl StackTrace. Entweder sorgst du dafür das der Konsolenoutput in ein File kommt oder du baust ein logging Framework in das Programm ein.

Das Programm ist gewachsen und diese Zusatzfunktion wurde hinzugefügt. Wenn ich diese wieder auskommentiere funktioniert auch der Export als .jar File. Hiermal der Teil welcher Probleme bereitet:
Wird dieser Codeteil direkt beim starten ausgeführt? Mein Tipp ins Blaue (leider lässt sich ohne wirkliche Exception bzw. StackTrace nur schwer was sagen) der Pfad zur xlsx Datei ist falsch -> FileNotFoundException.
 

maechi

Mitglied
Hier wäre es interessant zu erfahren um welche Exception es sich handelt inkl StackTrace. Entweder sorgst du dafür das der Konsolenoutput in ein File kommt oder du baust ein logging Framework in das Programm ein.
Hab mich evt ein bisschen falsch ausgedrückt. Das exportieren klappt sehr gut. Erst wenn ich den .jar File starte kommt ein Fenster von der JVM mit der Meldung. Welche Exception das ist, weiß ich selber leider auch nicht. Kann ich die mit dem von dir genannten Konsolenoutput ersehen? Und wenn ja wie geht das? Stichworte reichen, es gibts ja Google


Wird dieser Codeteil direkt beim starten ausgeführt? Mein Tipp ins Blaue (leider lässt sich ohne wirkliche Exception bzw. StackTrace nur schwer was sagen) der Pfad zur xlsx Datei ist falsch -> FileNotFoundException.
Dieser Codeteil wird NICHT beim starten ausgeführt. Erst beim Klick auf einen Button. Der Fehler kommt jedoch direkt mit starten

Java:
 public static String namensListe = "U:\\folder\\Subfolder\\SubSubfolder\\ExcelListe.xlsx";
so sieht der link dazu aus.
Wieso überhaupt kann IntelliJ das Programm ausführen? Sollte da dann nicht auch eine Exception geworfen werden?
 

Joose

Top Contributor
Wieso überhaupt kann IntelliJ das Programm ausführen? Sollte da dann nicht auch eine Exception geworfen werden?
Viele glauben nur weil es mit der IDE funktioniert müsste es als JAR auch klappen. Aber je nach Zugriff müssen dann bestimmte Resourcen relativ zum JAR liegen und dann gibts zum Beispiel eine FileNotFoundException ;)

Hab mich evt ein bisschen falsch ausgedrückt. Das exportieren klappt sehr gut. Erst wenn ich den .jar File starte kommt ein Fenster von der JVM mit der Meldung. Welche Exception das ist, weiß ich selber leider auch nicht. Kann ich die mit dem von dir genannten Konsolenoutput ersehen? Und wenn ja wie geht das? Stichworte reichen, es gibts ja Google

Wie startest du die exportierte JAR? Per Doppelklick oder über die Konsole. Wenn du sie über die Konsole startest solltest du den Konsolenoutput zu sehen bekommen
 

maechi

Mitglied
Ich starte eigentlich immer per doppelklick.
Wenn über die Konsole ausführe kommt "Fehler: Hauptklasse O2 Rechnungen final.jar konnte nicht gefunden oder geladen werden"

Hab auch schon versucht den Dateinamen umzubennen damit die leerezeichen aus dem Dateinamen wegfallen. Kommt aber exakt die selber Meldung.
Hab auch schön mit anführungszeichen in der Konsole gearbeitet also:
Java "O2 Rechnungen final".jar

Die jar datei liegt übrigens lokal auf meinem Rechner und alle Links sind hard eingecodet mit Laufwerksbuchstaben und nicht relativ
 

maechi

Mitglied
Hauptfenster.java dort ist meine main MEthode

Hab die .jar auch schon in Hauptfenster.jar umbenannt und ausgeführt aber kommt dennoch das er die Hauptklasse nicht finden bzw. nicht geladen werden kann
 

maechi

Mitglied
Jetzt klappt es!!!
Ausgabe ist:
Exception in Thread "main" java.lang.NoClassDefFoundError: org/apache/poi/xssf/usermodel/XSSFWorkbook
at Hauptfenster.<clinit>(Hauptfenster.java:37)
Caused by: java.lang.ClassNotFoundException: org.apache.poi.xssf.usermodel.XSSFWorkbook
at java.net.URLClassLoader.findClass(Unknown Source)
at lava.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at Java.lang.ClassLoader.loadClass (Unknown Source)
... 1 more

Wenn ich das so sehe ist in dem jar File ein fehlendes Artifact. Aber hab auch schon alle Artifacts in die Jar datei gemacht hatte dann so knapp 14 MB und hat immer noch nicht geklappt jetzt. So hat sie nur noch 2 MB
 

maechi

Mitglied
Un was ist die entsprechende Bibliothek? Eig doch die POI aber wenn ich die dazu mache kommt immernoch der gleiche fehler.
Jede .jar datei die mir IntelliJ anbietet klappt nicht. Hab einmal POI-3.15.jar, POI-ooxml-3.15.jar und dann werden mir noch einige Maven's angezeigt. Da ist allerdings keine org.apache.poi.xssf.usermodel.XSSFWorkbook dabei.
Da bin ich dann wieder verwundert. Selbst wenn ich alle verfügbaren Elemente einfüge und ich auf die besagten 14 MB komme geht es dennoch nicht. Evt muss ich diese org.apache.poi.xssf.usermodel.XSSFWorkbook Library noch hinzufügen aber dann versteh ich nicht warum IntelliJ das Programm vollkommen richtig und Fehlerfrei laufen lassen kann und es unter der JVM nicht mal schafft zu starten. IntelliJ braucht diese Klassen ja auch irgendwo her.

Edit:
Laut: http://poi.apache.org/overview.html#components müsste dies ja in poi-ooxml vorhanden sein was bereits im .jar File vorhanden ist!?
 

Joose

Top Contributor
Du wirst doch IntelliJ gesagt haben welche Bibliothek es einbinden soll damit du die gewünschten Klassen verwenden kannst.
Ich kann es dir nicht sagen, tippe aber auf POI-3.15.jar. Schau am besten in die JAR rein und kontrolliere ob die entsprechenden Klassen dort vorhanden sind bzw. welche JAR in IntelliJ als Lib angegeben ist.
 

maechi

Mitglied
Ich habe in IntelliJ lediglich iText-5.5.6.jar(für PDF Ausgabe = funktioniert), POI-3.15.jar und POI-ooxml-3.15.jar hinzugefügt
Habe die jar's geöffnet und unter dem Link die die Konsole ausgabe(org.apache.poi.xssf.usermodel.XSSFWorkbook) und in der poi-ooxml-3.15.jar habe ich genau diesen Link gefunden und konnte mit IntelliJ sogar die Klasse XSSFWorkbook öffnen. Wenn ich diese poi-ooxml-3.15.jar jedoch zusammen mit iText... und poi-3.15.jar in einbinde kommt immer noch der Fehler das er die Klasse XSSFWorkbook nicht finden kann. Aber die ist ganz sicher mit in dem jar File dabei
 

maechi

Mitglied
Nun hab ich die Lösung gefunden. Ich habe bisher immer die Bibliotheken als .jar zu meinem Projekt hinzugefügt. Mit einem rechtsklick auf den verfügbaren .jar file 'extract into Output root' wird die entpackte datei hinzugefügt. Nun funktioniert auch alles. Warum die iText.jar automatisch entpackt wurde ist mir allerdings immer noch nicht ganz klar. Jedoch ist mein Problem damit gelöst. Besten dank für den Support.
Ohne Joose wüsste ich bist jetzt noch nicht mal was es für ein Fehler ist :D
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
O xlsx Datei auslesen mit POI Apache liest keine LEERZELLEN Allgemeine Java-Themen 6
O xlsx Datei auslesen mit POI von Apache wirft seltsamen Fehler. Allgemeine Java-Themen 11
J xlsx Dateien lesen OHNE apache POI Allgemeine Java-Themen 6
M Java und *.xlsx Allgemeine Java-Themen 3
W Jar-File Start nur über Terminal Allgemeine Java-Themen 13
R 11 GB File lesen ohne zu extrahieren Filedaten Bereich für Bereich adressieren dann mit Multi-Thread id die DB importieren Allgemeine Java-Themen 3
D Read JSON File Problem Allgemeine Java-Themen 9
S Umstellung von File auf Path - Probleme mit Stream Allgemeine Java-Themen 5
C jar File mehrfach aufrufen (als Windows Dienst) Allgemeine Java-Themen 5
N File Path mit Variablen angeben Allgemeine Java-Themen 1
izoards Zugriff auf gemeinsame Ressource (CSV-File) Allgemeine Java-Themen 3
S Class File Editor -> Source not found Allgemeine Java-Themen 4
F jar File ausführen Allgemeine Java-Themen 14
M File Binary Representation Allgemeine Java-Themen 1
N jar File auf Mac mit Doppelklick starten Allgemeine Java-Themen 5
O Input/Output java.io.File beenden Allgemeine Java-Themen 5
G File not found - nach dem Kompilieren Allgemeine Java-Themen 6
T Jar File zu exe... Allgemeine Java-Themen 3
M Foreign Memory API / Memory-Mapped File Allgemeine Java-Themen 0
R Delete files before creating new from temp using Java file method Allgemeine Java-Themen 1
S File lesen und schreiben Java 6 Allgemeine Java-Themen 2
T String-Manipulation beim Ablauf in Eclipse und als JAR-File Allgemeine Java-Themen 8
F Input/Output FileNotFoundException, obwohl File existiert Allgemeine Java-Themen 5
G Excel File öffnen, in Zelle schreiben, abspeichern Allgemeine Java-Themen 6
L JAR-File auf Ilias (LMS) laufen lassen Allgemeine Java-Themen 0
ralfb1105 Classpath Directory fuer Properties File Allgemeine Java-Themen 2
L File beim Kopieren in einen anderen Ordner umbenennen Allgemeine Java-Themen 6
J File in Package erstellen & lesen mit Programmstart in externe Projekt Allgemeine Java-Themen 3
I File ausführen und mein Programm bearbeiten lassen Allgemeine Java-Themen 11
A File lesen Codierung Charset Allgemeine Java-Themen 5
J .java-Dateitext Compile zur Laufzeit ohne File Allgemeine Java-Themen 15
M Key-File im selben Ordner speichern? Allgemeine Java-Themen 18
I TrueZip add file to archive Allgemeine Java-Themen 10
T Probleme mit dem Pfad zum Propertie file Allgemeine Java-Themen 7
J ftp - delete file ohne appache Allgemeine Java-Themen 8
X Klassen File-Klasse wird als Directory markiert Allgemeine Java-Themen 8
T ImageIO.read -> Can`t read input file Allgemeine Java-Themen 11
L Applet Problem "security: Trusted libraries list file not found" ? Allgemeine Java-Themen 7
C Swing File[] als klickbare links in irgendeinem Swing Element Allgemeine Java-Themen 3
H Kennt sich jemand mit Eclipse und dem Thema Jar-File aus ? Allgemeine Java-Themen 6
H Laden einer (Resourcendatei) aus einem Jar-File Allgemeine Java-Themen 17
C Authentifizierung mit java.nio.file? Allgemeine Java-Themen 5
L CSV File lesen, in ArrayList speichern und ausgeben Allgemeine Java-Themen 3
offi Drag and Drop mehrerer File aus Explorer in JTable Allgemeine Java-Themen 1
G Java/LibGDX File Loading Exception Allgemeine Java-Themen 2
Cromewell JavaFX FXML-File lädt unter Ubuntu nicht Allgemeine Java-Themen 7
D Java Anwendung mit dll File Allgemeine Java-Themen 5
AssELAss Log4j Logging Ausgabe für jede Klasse in seperates File Allgemeine Java-Themen 2
thet1983 Input/Output read properties file from classpath Allgemeine Java-Themen 3
J Umwandeln von URL zu File und danach kopieren geht nicht Allgemeine Java-Themen 1
J Properties file ändern Allgemeine Java-Themen 12
S Executable Jar File startet nicht unter Windows 10 Allgemeine Java-Themen 3
B Objekte anhand von Properties file Allgemeine Java-Themen 41
Dechasa Input/Output Write into File Allgemeine Java-Themen 2
N Maven ObjectMapper Error wenn das File gespeichert wird Allgemeine Java-Themen 0
H Security Manager (IIOException: Can't read input file!) Allgemeine Java-Themen 2
H File.listFiles() funktioniert nicht... Allgemeine Java-Themen 10
C Input/Output Problem bei Datei verschiebung mit File.move und Paths.get() Allgemeine Java-Themen 26
X Zeile unter einer bestimmen Zeile hinzufügen(File) Allgemeine Java-Themen 1
F Open source file übersetzen Phython -> Java Allgemeine Java-Themen 4
C file.delete() funktioniert bei zweiten aufruf nicht mehr Allgemeine Java-Themen 3
M Desktop jar File icon Ändern? Allgemeine Java-Themen 14
O Sax-Parser ließt XML-File doppelt Allgemeine Java-Themen 1
J Java Software Compare Files und Neue File erstellen Allgemeine Java-Themen 0
Thallius Custom File Chooser Allgemeine Java-Themen 1
C .jar File lässt sich nur über Konsole öffnen Allgemeine Java-Themen 1
J Java Download Filedownload File.getFileName Allgemeine Java-Themen 3
R Java .class-File-Konstrunkt mit Programm visualisieren Allgemeine Java-Themen 18
G SecurityManager/Policy-File/Reflection Allgemeine Java-Themen 0
M pdf File bzw. ausgefüllte pdf Formulare drucken Allgemeine Java-Themen 2
S Input/Output File Not Found FileReader Allgemeine Java-Themen 6
Thallius Serialisiertes File kann auf anderem Rechner nicht geladen werden Allgemeine Java-Themen 12
P Java Dynamic Web Project -> config File Allgemeine Java-Themen 1
S runnable jar file in Verbindung mit itext Allgemeine Java-Themen 3
D Variablen java.io.File zum vergleichen abspeichern Allgemeine Java-Themen 1
M File IO Klasse ... wie einbinden Allgemeine Java-Themen 6
O Freies Tool zum Jar-File obfuscaten gesucht! Allgemeine Java-Themen 5
F File.listFiles ohne .sort Allgemeine Java-Themen 6
B XML File JAXB Allgemeine Java-Themen 0
S Platzverbrauch, File oder String Allgemeine Java-Themen 14
J Runnable jar-File: Fehlermeldung Allgemeine Java-Themen 2
P Kurze Frage: aus einer File die Zeilenanzahl auslesen Allgemeine Java-Themen 9
K Gepacktes Jar-File gibt beim Doppelklick eine Exception aus Allgemeine Java-Themen 4
P java.nio.file unter Java 6 verwenden Allgemeine Java-Themen 4
A TXT File einlesen unterschiedliche Zeilenlänge Allgemeine Java-Themen 9
B Finde letztes veränderte File Allgemeine Java-Themen 4
E Zip-File entpacken: unterschiedlicher Zeitaufwand bei unterschiedlicher Puffergröße Allgemeine Java-Themen 2
Guybrush Threepwood File.canWrite() und UAC Allgemeine Java-Themen 7
N Input/Output Mit Windows 7 erzeugtes zip-File in Java 7 öffnen Allgemeine Java-Themen 5
B Garbage Collection Logfile: Binary File Allgemeine Java-Themen 2
H XML-File mit Java erzeugt Frage Allgemeine Java-Themen 10
V C-Header Datei aus .java File herstellen Allgemeine Java-Themen 10
D File mit Inhalt kopieren und dieses File dann neu erstellen ? Allgemeine Java-Themen 4
T @NotBlank verwendet nicht message aus .property-File Allgemeine Java-Themen 4
G Jar-File soll eignen *.jar Namen ausgeben Allgemeine Java-Themen 10
S Jar-File startet nicht über doppelklick Allgemeine Java-Themen 2
P ganze Zeilen in einem File mit .replace() ändern. Allgemeine Java-Themen 10
S Datei in File-Objekt mit UTF-8 einlesen Allgemeine Java-Themen 2
P Aus einem File Zeilen auslesen. Allgemeine Java-Themen 15
V ProcessBuilder exe file Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben