2011-01-07 11 views
12

Bu korktuğum çok utanç verici sorulardan biridir."main" iş parçacığında özel durum java.lang.NoClassDefFoundError: DiServer <yanlış ad: ds/DiServer>

package ds; 
    public class DiServer { 
public static void main(String[] args) { 
    int foo = 0; 
    int bar = 0; 
    /*bla*/ 
    } 
    } 

Basit hakkı:

Eclipse bir program var? Bu Eclipse'de çalışırken tamamen iyi çalışıyor.

Bunu komut satırından çalıştırmak istiyorum. Ben ds klasörü içinde ds klasörü ve ds içinde DiServer.class ve .classpath

kopyaladım, bu klasörü ayrı bir klasöre ekledim, C: \ Belgelerim \ DiTest, açılan komut istemi, C'ye gitti. : \ Belgelerim \ DiTEST \ ds \ ve java DiServer

ben java -classpath denedi Exception in thread "main" java.lang.NoClassDefFoundError: DiServer <wrong name:ds/DiServer> ... Could not find the main class: DiServer. Program will exit.

olduğunu olsun hata yazdınız. DiServer, java -classpath ../ .. DiServer, ds klasörüne .classpath taşınıyorum, ama bunu elde edemiyorum. % 99 eminim bir sınıf yolu problemi ama nasıl tamir edeceğimi bilemiyorum.

Her zaman olduğu gibi herhangi bir yardımı çok takdir ediyorum ve bir bira bardağının geleneksel teklifi her zaman geçerli. şimdiden çok

sayesinde

M

cevap

24

Sen sınıf tam adıds.DiServer değil DiServer olduğunu. C:\My Documents\DiTest Gönderen:

java -cp . ds.DiServer 

Ve voilà.

+0

Artık bunu test etmek için ofisteyim ama bu konuda sözünü alıp Pazartesi sabahı öğreneceğim! İkinize de çok iyi cevaplar verdiğiniz için teşekkür ederim, eğer ikisini de en iyisi olarak seçebilirsem, ama sadece bir tane olabileceğinden, problemin en iyi açıklamasına sahip olanı vereceğim. Tekrar çok teşekkür ederim, pintiniz her zaman talep edilebilir :) – Myn

+0

'java -cp .' gereklidir? –

+0

Evet, 'CLASSPATH 'ortam değişkeninize' .' içermediyseniz bu yoktur. – gabuzo

11

git C:\My Documents\DiTest\ds\

javac DiServer.java 

git C:\My Documents\DiTest\

java ds.DiServer 

Ayrıca Bkz

+0

ve eğer tutkuyla çalışıyorsa, ilk adım gereksiz olmalı, sadece çıktı (bin) dizininin kökünü bulun ve java ds.DiServer'ı buradan çalıştırın. – KevinDTimm

İlgili konular