Προς το περιεχόμενο

Java Problem


Ozone

Προτεινόμενες αναρτήσεις

Δημοσ.

εμαι νεος στον προγραματισμο και σπουδαζω σε κολεγειο της κυπρου computer science.

αρχισαμε την Java και χρησιμοποιουμαι το προγραμα SciTE για να γραφουμαι τα προγραματα μας.

λοιπον εχω ενα προβλημα με την τζαβα . εχω αρκετα προγραματακια που δουλευουν στους υπολιγεστες του κολεγιου μια χαρα αλλα στον φοριτο μου υπολγιστη βγαζει καποιο error.

εχω εγκατεστημενο j2eesdk-1_4_02_2005Q2-windows

οταν ανοιξω το προγραματακι που δεν εχει κανενα λαθος μεσα και πατησο Go μου βγαζει συνεχως και σε ολα τα προγραματακια αυτο το ερορ

>java UndergroundTest

java.lang.NoClassDefFoundError: UndergroundTest

Exception in thread "main" >Exit code: 1

το εκανα unistall και install και εχω το ιδιο προβλημα.

επισης εχω βαλει μεσα στο PATH το C:\Program Files\Java\jdk1.5.0_05\bin

εχουμαι και ενα βιβλιο και ακολουθυσα σωστα τις οδιγειες

τι πρεπει να κανω?

post-28963-129062925912_thumb.jpg

Δημοσ.

java -cp . UndergroundTest.java, (οχι javac, αυτο ειναι για compile)

Όμως εχει δικιο, βάζοντας -cp . (μαζι με την τελεια) θετει ως classpath το τρέχον directory όπου (φανταζομαι) υπαρχουν οι κλασεις σου.

 

[EDIT] Αν όμως, οπως βλεπω απο το screenshot σου, θελεις να το τρεξεις μεσω του editor σου, θα πρεπει να κοιταξεις τα settings του, ή να ορισεις το CLASSPATH σου να βλεπει στο φακελο που βρισκονται τα προτζεκτ σου (το οριζεις εκει που οριζεις και το PATH δηλ control panel>system properties etc...)

Δημοσ.

εχω γραψει java -cp . UndergroundTest.java αλλα τιποτα δεν γινεται. μου βγαζει ενα σωρο εντολες απο κατω .

μολις εγκατεστησα τα windows μετα format δουλευε μια χαρα , μετα απο 1 βδομαδα μου εκανε αυτο το προβλημα.

εκεινο πυ υποψιαζομαι εγω ειναι οτι το Spybot - Search & Destroy εκανε καμια λαδια μεσα στο regisrty.

οταν ανοιξω το regedit και κανω αναζητηση για το CLASSPATH μου βρισκει μεσα στο CLASSPATH to directroy

C:\Program files\Java\jre1.5.0_05\lib\ext\QTJava.zip

δεν ειναι παραξενο?

Δημοσ.
εχω γραψει java -cp . UndergroundTest.java αλλα τιποτα δεν γινεται. μου βγαζει ενα σωρο εντολες απο κατω .

 

ουπς λαθος, δοκιμασε

java -cp . UndergroundTest (σκετο, χωρις .java)

θυμισου να εισαι στον φακελο οπου βρίσκεται το UndergroundTest.class (class, οχι java)

Δημοσ.

εγραψα

java -cp . UndergroundTest

ειμουν στο φακελλο

μετα εκανε σαν να δουλευε για λιγα δευτερολεπτα και μετα μου εβγαλε μια στηλη απο εντολες. μετα εγραψα

java UndergroundTest

για να μου τρεξει το αρχειο και μυ εβγαλε

Exception in thread "main" java.lang.NoClassDefFoundError: UndergroundTest

 

ατε και λυθικε το προβλημα καθε φορα θα πρεπι να κανω αυτη την διαδικασια οποτε γραψω νεο προγραμα?

Δημοσ.

ρε συ, εχεις κανει compile το προγραμμα σου;

εννοω, εχεις μεσα στο φακελο σου τα αρχεια UndergroundTest.class και Underground.class?

 

[EDIT] αν οχι τοτε:

εισαι στον φακελο οπου βρισκονται το UndergroundTest.java & Underground.java ok?

Γραφεις javac UndergroundTest.java

Μετα απο αυτο πρεπει στο φακελο να σου εμφανιστουν το UndergroundTest.class και Underground.class

Γραφεις java UndergroundTest

..... και πρεπει να δουλεψει

 

Αν οχι, πες μου τι ακριβως μηνυματα σου πεταει

Δημοσ.

εχω βαλει ενα πολυ απλο προγραματακι μεσα στο folder του underground μπορεις να το δεις απο

http://sting.cycollege.ac.cy/~stavros/html/courses/csc131/csc131assignments/1/Assignment1.java

δοκιμασε να το τρεξεις να δεις οτι δουλευει.

δες την φωτογραφια και τη μου βγαζει.

post-28963-129062925921_thumb.jpg

Δημοσ.

>
/*Iliya Zanev
Reg. Number: F2005653
CSC 131 C
Assignment Number 1*/

//The program Converts Cyprus pounds to Euro

import java.util.Scanner;

public class Assignment1
{	
public static void main(String args[])
{
	Scanner input = new Scanner(System.in);
	
	double CYP;   //variable for Cyprus pounds
	double EUR;   //variable for Euro
	
	System.out.printf("\nPlease enter the amount you want to change: ");   //input message
	CYP = input.nextDouble();   //input
	
	EUR = CYP * 1.7449;       //calculataing the amount in Euro
	
	System.out.printf("\n%.4f Cyprus Pounds equals %.4f Euro\n", CYP, EUR);   //calculated amount output
	System.out.println();
	
}//end main
}//end class

---------------------------

τελεικα δουλεψε με το java -cp . Assignment1 . δεν εβλεπα την τελεια και δεν την εβαζα γιαυτο δεν δουλευε. αλλα μετα εγραψα java Assignment1

και μου εβγαλε παλυ το προβλημα. εγω τωρα τη πρεπει να κανω για δουλευει σωστα το editor μου ? να μην θελω καθε φορα να γραφω μεσα στο ντος την εντολη java -cp . ???

να γραψω κατι αλλο μεσα στο PATH?

 

C:\Assignment1>java -cp . Assignment1

How many CYP you want to Exchange? : 3

CYP that you ask for exchage is:3.0

Exchange result:5.2347

 

C:\Assignment1>java Assignment1

Exception in thread "main" java.lang.NoClassDefFoundError: Assignment1

 

C:\Assignment1>

Δημοσ.

λοιπον, ειπες οτι εχεις ορισει το PATH οποτε ξερεις πως οριζεται μια μεταβλητη του συστηματος

τωρα πρεπει να ορισεις και μια νεα μεταβλητη που λεγεται CLASSPATH η οποια θα δειχνει σε οποιους φακελους εχεις προγραμματα (κλασσεις) java που θελεις να τρεχεις (στη προκειμενη περιπτωση c:\assignement1\ ). Βασικά καλο είναι να εχεις όλα σε ενα φακελο για να μη τα ψαχνεις. Εναλλακτικα, κοιτα στις ρυθμισεις του editor σου, μπορει να εχει κατι για αυτη τη δουλεια...

Επιπλεον, μπορεις να δοκιμασεις και το NetBeans απο το site της sun. Ειναι καλος editor και δωρεαν

Δημοσ.

λοιπον ορισα μεσα στο CLASSPATH το φακελο C:\Assignment1 τωρα ολα γραφει μεσα στο classpath ειναι C:\Program Files\Java\jre1.5.0_05\lib\ext\QTJava.zip;C:\Assignment

το scite ειναι πολυ απλο προγραμα και δεν εχει ρυθμισεις. αυτο που δεν καταλαβω ειναι γιατι να συμβαινει αυτο το προβλημα. που την στιγμη που μολις εκαμα φορματ και εγκατεστησα την java δουλευαν ολα μια χαρα αλλα μετα απο 1 βδομαδα εμφανισε αυτο το προβλημα. κατι θα αλλαξε δεν γινεται. σε ολους τους υπολογιστες στο κολεγιο δεν εχουμε καθορισμενο φακελο για ta .class της java. μου φενεται πολυ περιεργο.

Δημοσ.

δεν δουλευει χωρις το -cp . ουτε στο dos ουτε στο editor !! γιαυτο σου λεω ειναι παραξενο κατι αλλο θα εχει....

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...