NoClassDefFoundError, warum?

Status
Nicht offen für weitere Antworten.

T1M

Bekanntes Mitglied
Hi,
ich arbeite mit eclipse. da bekomm ich einen NoClassDefFoundError. die klasse auf die sich der fehler bezieht hab ich mit java build path (rechtsklick auf das project --> eigenschaften --> java build path) angefügt. liegt nämlich in nem ganz anderen ordner.
jetzt will ich die klasse verwenden, bekomme aber den fehler, und das obwohl mir eclipse vorher nichts rot unterstreicht.
hab das prog mal über die konsole gestartet, da gibt er mir keinen fehler aus.

poste mal n bissl code, hoffe es bringt was ...
Klasse Tafel
Code:
...
public static void main(String[] args)
	{
		Frame f = new Tafel();
		f.show();
		//DBFrids db = new DBFrids("frids", "frids", "FRIDS");
		DBFrids db = new DBFrids("FRIDS_TEST");
         try
		 {
         	System.out.println("try db.connectDB()");
         	db.connectDB();
         }
         catch(Exception e)
         {
             System.out.println("Fehler beim Connect: " + e.toString());
             System.exit(-1);
         }
   }
   
    //Verbindung zur DBFids abbrechen und Fenster verlassen: 
    private void exitForm()
    {
        try
		{
           // dbFrids.disconnectDB();
            System.exit(0);
        } catch(Exception e) {System.out.println(e); }
    }
das "try db.connectDB()" schreibt er auch.

Klasse DBFrids
Code:
/** Creates new DBFrids */
    public DBFrids() {
    }
    public DBFrids(String service, PrintDebug d)
    {
        vService = service;
        dbg = d;
    }
    public DBFrids(String service)
    {
        vService = service;
        dbg = new PrintDebug( "2", "h:\\frids.log");
        if (dbg.getLastErrorNumber() == PrintDebug.DEBUG_ERR )
            System.out.println(dbg.getLastError());    
    }
...
//ne menge sql code für andere projekte
...
public Collection getKreissalPatienten()
    {
    	String sql = "select station, name "+
    				 "from krstafel2";
    	
    	  Collection list = new ArrayList(128);
    	  
    	  Statement query = null;
          ResultSet daten = null;
          int i = 0;
          try
  		  {
          		query = db.createStatement();
          		daten = query.executeQuery(sql);

          		//die Datenbankabfrage
          		while(daten.next())
          		{
          			System.out.println("Daten werden eingelesen");
          			KreissaalPat p = new KreissaalPat();
          			p.setStation(daten.getString("Station"));
          			p.setName(daten.getString("Name"));
          			list.add(p);
          			i+=i;
          		}
  		  }
          catch(Exception e) 
	      {
          	System.out.println("Fehler");
          		i=0;
	      };
	      CollectionTableModel m = (CollectionTableModel) table.getModel();
	      m.setData(getKreissalPatienten());
	      System.out.println("Anzahl = " + i);    	
	      return list;
    }
...
schanke döhn,
T1M
 

Campino

Top Contributor
1. Über den Java Build Path in eclipse bindet man keine *.class sondern *.jar Dateien ein
2. Wenn das Programm sich aus der Konsole starten lässt, hast du entweder die Klassen im normalen Java-Classpath (beim start mit angegeben oder sowieso drinn) oder die Klasse wird nicht gebraucht, wenn sie immer im Classpath drinn ist, sollte eclipse sie mitladen.
 

T1M

Bekanntes Mitglied
hmm.., und wie kann ich dann ne andere klasse aus nem anderen ordner meinem projekt zugänglich machen?
 
G

Guest

Gast
na dann packste diese andere class einfach in dein package und fertich
 
B

bygones

Gast
T1M hat gesagt.:
hmm.., und wie kann ich dann ne andere klasse aus nem anderen ordner meinem projekt zugänglich machen?
ist diese klasse in einem andern projekt ? oder einfach in einem anderen Ordner.

wenn es in einem anderen Projekt ist, kannst du über den Build path auch einfach das Projekt hinzufügen....
 

T1M

Bekanntes Mitglied
das is n ganzes sammelsorium von klassen (meist datenbankzeugs), auf die viele andere programme zugreifen.
ich hab da den ordner angegeben und die klasse erscheint auch als klasse in nem package.
also:
default package (jaja, ich weiß ...): meine klassen
ufk.frids (package): dbfrids und andere klassen
ufk.lala ...
 

T1M

Bekanntes Mitglied
oki, andere frage:
ich will die abgefragten sachen in meiner jtable stehen haben.
so wie ichs des hab gehts net. was ist falsch daran?

Klasse Tafel:
Code:
public Tafel(DBFrids db)
	{
dbfrids = db;	
...
//panel_table füllen
        gbc.weightx = 100;
        gbc.weighty =100;
        gbc.fill = GridBagConstraints.BOTH;
        gbc.anchor = GridBagConstraints.NORTH;

        CollectionTableModel model = new CollectionTableModel()
		{
        	  protected Object getValueAt(Object src, int column)
        	  {
        	    KreissaalPat p = (KreissaalPat)src;
        	    return (column==0)?p.getStation():p.getName();
        	  }

        	  protected void setValueAt(Object dst, int column, Object value)
        	  {
        	    KreissaalPat p = (KreissaalPat)dst;
        	    if(column==0)
        	      p.setStation((String)value);
        	    else
        	      p.setName((String)value);
        	  }

        	  public int getColumnCount()
        	  {
        	    return 2;
        	  }

        	  public String getColumnName(int column)
        	  {
        	    return (column==0)?"Station":"Name";
        	  }
        };        
        table = new JTable(model);
	   add(table, panel_table, gbc, 0, 0, 1, 1);
	   table.getTableHeader().setReorderingAllowed(false); //kein verschieben der columns
	   table.setRowHeight(table.getRowHeight() + 35); // Zeilenhöhe festlegen
	   table.setFont(new Font("Arial", Font.TRUETYPE_FONT, 10));
	   table.getCellEditor(row, column);
 
	   //Spaltenbreite festsetzen
	   TableColumn tcolumn = table.getColumn("Station");
	   tcolumn.setMinWidth(40);
	   tcolumn.setMaxWidth(40);
	   tcolumn = table.getColumn("Name");
	   tcolumn.setMinWidth(120);
	   tcolumn.setMaxWidth(120);
...
public static void main(String[] args)
	{
		
		//DBFrids db = new DBFrids("frids", "frids", "FRIDS");
		DBFrids db = new DBFrids("FRIDS_TEST");
         try
		 {
         	System.out.println("try db.connectDB()");
         	db.connectDB();
         }
         catch(Exception e)
         {
             System.out.println("Fehler beim Connect: " + e.toString());
             System.exit(-1);
         }
         Frame f = new Tafel(db);
 		f.show();
   }
}

Klasse DBFrids:
Code:
 public class DBFrids extends Object {
...
/** Creates new DBFrids */
    public DBFrids(String service)
    {
        vService = service;
        dbg = new PrintDebug( "2", "h:\\frids.log");
        if (dbg.getLastErrorNumber() == PrintDebug.DEBUG_ERR )
            System.out.println(dbg.getLastError());   
    }
...
//ne menge sql code für andere projekte
... 

public JTable table;
	private String Station, Name, P_, ET, SSW, G, P, F, Lage, Diagnose, Therapie, v, CTG, 
	   		Pädiater_informiert, AN_Aufklärung;
    
    public class KreissaalPat extends Object
	{
		public String Station;
		public String Name;
		
		public KreissaalPat()
		{
			initPat();
		}
		
		public void initPat()
	    {
			 Station = "";
			 Name = "";
	    }
		
		public String getName()
		{
		    return Name;
		}

		public void setName(String name)
		{
		    Name = name;
		}
		
		public String getStation()
		{
		    return Station;
		}

		public void setStation(String station)
		{
		    Station = station;
		}	
	}
    
    abstract class CollectionTableModel extends AbstractTableModel
	{
		  private ArrayList data = new ArrayList(512);

		  public void setData(Collection data)
		  {
		    this.data.clear();
		    this.data.addAll(data);
		    fireTableDataChanged();
		  }

		  public Collection getData()
		  {
		    Collection result = new ArrayList(data.size());
		    result.addAll(data);
		    return result;
		  }

		  protected abstract Object getValueAt(Object src, int column);

		  public Object getValueAt(int row, int column)
		  {
		    return getValueAt(data.get(row), column);
		  }

		  protected abstract void setValueAt(Object dst, int column, Object value);

		  public void setValueAt(Object value, int row, int column)
		  {
		    setValueAt(data.get(row), column, value);
		    fireTableRowsUpdated(row, row);
		  }

		  public int getRowCount()
		  {
		    return data.size();
		  }
		}
  
    public Collection getKreissalPatienten()
    {
    	String sql = "select station, name "+
    				 "from krstafel2";
    	
    	  Collection list = new ArrayList(128);
    	  
    	  Statement query = null;
          ResultSet daten = null;
          int i = 0;
          try
  		  {
          		query = db.createStatement();
          		daten = query.executeQuery(sql);

          		//die Datenbankabfrage
          		while(daten.next())
          		{
          			System.out.println("Daten werden eingelesen");
          			KreissaalPat p = new KreissaalPat();
          			p.setStation(daten.getString("Station"));
          			p.setName(daten.getString("Name"));
          			list.add(p);
          			i+=i;
          		}
  		  }
          catch(Exception e) 
	      {
          	System.out.println("Fehler");
          		i=0;
	      };
	      CollectionTableModel m = (CollectionTableModel) table.getModel();
	      m.setData(getKreissalPatienten());
	      System.out.println("Anzahl = " + i);    	
	      return list;
    }
}
hoffe ich hab euch jetzt net mim code erschlagen. sitz da scho ewig dran und komm nich weiter :cry:
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D NoClassDefFoundError: Could not initialize class Allgemeine Java-Themen 0
G java.lang.NoClassDefFoundError: org/aspectj/lang/Signature Allgemeine Java-Themen 2
volcanos JavaFX-Programme nur in NetBeans selber ausführbar ! command_line: NoClassDefFoundError Allgemeine Java-Themen 39
S Compiler-Fehler NoClassDefFoundError Allgemeine Java-Themen 4
M NoClassDefFoundError Allgemeine Java-Themen 6
F Fehlermeldung: java.lang.NoClassDefFoundError: org/apache/commons/net/ntp/NTPUDPClient Allgemeine Java-Themen 6
T Compiler-Fehler NoClassDefFoundError beim Laden einer Class Allgemeine Java-Themen 11
E HILFE !! Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils Allgemeine Java-Themen 4
C Hilfe bei NoClassDefFoundError Allgemeine Java-Themen 14
J Exception in thread "main" java.lang.NoClassDefFoundError Allgemeine Java-Themen 4
H Java Mail Fehlermeldung: java.lang.NoClassDefFoundError: javax/mail/internet/AddressException Allgemeine Java-Themen 5
Crooda Compiler-Fehler java.lang.NoClassDefFoundError bitcoinj Allgemeine Java-Themen 1
L Eigenener ClassLoader wirft java.lang.NoClassDefFoundError Allgemeine Java-Themen 0
A Classpath LWJGL+NiftyGui und der NoClassDefFoundError Allgemeine Java-Themen 1
S java.lang.NoClassDefFoundError Allgemeine Java-Themen 5
T NoClassDefFoundError... Allgemeine Java-Themen 5
G Json-Lib NoClassDefFoundError Allgemeine Java-Themen 3
T ProcessBuilder (java.lang.NoClassDefFoundError) Allgemeine Java-Themen 2
E NoClassDefFoundError: javax/microedition/io/Connection Allgemeine Java-Themen 2
P NoClassDefFoundError sigar Allgemeine Java-Themen 5
B NoClassDefFoundError Allgemeine Java-Themen 5
O NoClassDefFoundError Allgemeine Java-Themen 5
reibi NoClassDefFoundError abfangen Allgemeine Java-Themen 6
N NoClassDefFoundError bei JasperReports Allgemeine Java-Themen 2
G NoClassDefFoundError: java/lang/Object Allgemeine Java-Themen 4
S JOGL NoClassDefFoundError und Maven Allgemeine Java-Themen 4
G NoClassDefFoundError Allgemeine Java-Themen 3
M NoClassDefFoundError Allgemeine Java-Themen 9
E Java Fehlermeldung java.lang.NoClassDefFoundError Allgemeine Java-Themen 3
F NoClassDefFoundError Allgemeine Java-Themen 5
F An Profis: NoClassDefFoundError bei 1 von 20 Usern Allgemeine Java-Themen 16
Jens Hibbeler Klasse Laden, aber wie? NoClassDefFoundError? Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben