Problem mit JBuilder / jdk 5.0



  • Hi,

    hab nur ein Frame mit JBuilder erstellt:

    package main;
    
    import java.awt.BorderLayout;
    
    import javax.swing.JFrame;
    
    public class mainFrame extends JFrame {
        BorderLayout borderLayout1 = new BorderLayout();
    
        public mainFrame() {
            try {
                jbInit();
            } catch (Exception exception) {
                exception.printStackTrace();
            }
        }
    
        private void jbInit() throws Exception {
            getContentPane().setLayout(borderLayout1);
        }
    
        public static void main(String[] args) {
            mainFrame mainframe = new mainFrame();
        }
    }
    

    Versuche es mit jdk 5.0 zu compilieren:

    javac mainFrame.java
    

    zeigt er mit keine Fehlermeldung. Aber wenn ich versuche mainFrame auszuführen mit:

    java mainFrame
    

    bekomme ich die Fehlermeldung:

    Exception in thread "main" java.lang.NoClassDefFoundError: mainframe (wrong name
    : main/mainFrame)
            at java.lang.ClassLoader.defineClass1(Native Method)
            at java.lang.ClassLoader.defineClass(Unknown Source)
            at java.security.SecureClassLoader.defineClass(Unknown Source)
            at java.net.URLClassLoader.defineClass(Unknown Source)
            at java.net.URLClassLoader.access$100(Unknown Source)
            at java.net.URLClassLoader$1.run(Unknown Source)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(Unknown Source)
            at java.lang.ClassLoader.loadClass(Unknown Source)
            at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
            at java.lang.ClassLoader.loadClass(Unknown Source)
            at java.lang.ClassLoader.loadClassInternal(Unknown Source)
    

    und mit javaw mainFrame sagt er: could not find main class!!!!

    Was ist denn hier falsch?? Ich dachte mit Jbuilder geschriebene Programm kann ich unter Linux übersetzen!!

    Für jede Hilfe bin sehr dankbar.

    mfg

    w.r



  • Wenn deine Klasse in einem Package liegt dann erwartet der Interpreter die Klasse auch in einem Verzeichnis mit dem Package-Namen.

    Beispiel:

    ROOT  <--------- du befindest dich hier.
     +---- main
             +---- mainFrame.class
    

    Der Aufruf ändert sich demnach auch wie folgt

    java -cp . main.mainFrame
    

    und zwar während man im ROOT-Directory ist.



  • Welche JBuilder-Version hast du?
    Geht nur mit der 2005er.

    Liebe Grüße
    Real



  • Hi,

    das probiere ich aus!

    Ja hab JBuilder 2005



  • Hi,

    Ich bekomme die Meldung

    Exception in thread "main" java.lang.NoClassDefFoundError: main/mainFrame
    

    wenn ich

    java -cp . main.mainFrame
    

    Was mache ich da falsch?

    mfg

    w.r



  • Hast du beim 2005er den Pfad zum 1.5 jdk gegeben UND gesagt, dass er für 1.5 Features kompilieren soll?

    Liebe Grüße
    Real



  • Hi,

    es geht mir nicht darum von jbuilder aus zu compilieren sondern umgekehrt!

    Ich das von JBuilder produzierte Programm selber mit javac prog.java compilieren und starten!

    mfg

    w.r


Anmelden zum Antworten