classpath problem with Java

Συζητήσεις για γλώσσες προγραμματισμού και θέματα σχετικά με προγραμματισμό.
Post Reply
alexo
Venus Former Team Member
Posts: 1305
Joined: Wed Apr 21, 2004 7:00 pm

classpath problem with Java

Post by alexo » Tue Apr 10, 2007 2:58 am

Λοιπόν έχω το εξής πρόβλημα:
Χρησιμοποιώ ένα πακέτο σε Java (για Simulation) και όταν το βάζω
στη μεταβλητή classpath των Windows, μου το κάνει compile αλλά στο run μου πετάει Exception.
Όταν όμως δίνω χειρονακτικά το Path μου τρέχει οκ .
π.χ.

Code: Select all

java -classpath c:\Docs\alexo\classes; Simulation
ενώ με

Code: Select all

java -classpath classes; Simulation

δεν τρέχει.

Καμία ιδέα;
User avatar
HdkiLLeR
Venus Project Founder
Venus Project Founder
Posts: 4356
Joined: Tue Jan 27, 2004 4:41 pm
Academic status: Alumnus/a
Gender:
Location: New York, NY
Contact:

Post by HdkiLLeR » Tue Apr 10, 2007 11:38 am

Όταν λές classpath των Windows τι εννοείς; Την μεταβλητή περιβάλοντος CLASSPATH; Εάν ναι τι έχει μέσα (δώσε echo %CLASSPATH% );
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS d-->--- s+:+ a- C++(+++) BILS++++$ P--- L++++>+++++ E--- W+++ N+ o+ K w--
O M+ V-- PS++>+++ PE- Y++ PGP++ t+ 5+ X+ R* tv b++ DI- D+ G+++ e+++>++++ h r++ y++
------END GEEK CODE BLOCK------

"UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." -- Dennis Ritchie
User avatar
adam98
Gbyte level
Gbyte level
Posts: 1078
Joined: Tue May 02, 2006 2:58 pm

Post by adam98 » Tue Apr 10, 2007 12:00 pm

Βάλε στην μεταβλητή περιβάλλοντος των windows το c:\Docs\alexo\classes; και μετά θα τρέχεις μόνο με java Simulation
H δύναμη της εξαπάτησης και της καταστροφής μπορεί να γοητεύσει μόνο μέτριους και αδύναμους
Τhe lessons we learn from pain are the ones that make us the strongest
User avatar
Zifnab
Venus Former Team Member
Posts: 7581
Joined: Tue Nov 15, 2005 2:42 am
Academic status: MSc
Gender:
Location: Connecticut
Contact:

Post by Zifnab » Tue Apr 10, 2007 12:30 pm

thnx alexo για ερώτηση και adam για απάντηση...Αλλά πως αλλάζει κάποιος την μεταβλητή? :roll:

Κάνω σε cmd set %PATH%= bla bla ή κάτι τέτοιο ???
Last edited by Zifnab on Tue Apr 10, 2007 12:33 pm, edited 1 time in total.
alexo
Venus Former Team Member
Posts: 1305
Joined: Wed Apr 21, 2004 7:00 pm

Post by alexo » Tue Apr 10, 2007 12:32 pm

Adam εχθές έκανα αυτό το πράγμα και δεν έπαιζε.
Τελικά έκανα restart και έπαιξε. Τραγικό!
Thanks παιδιά!

@Zifnab

δεξί κλίκ στο My Computer->Advanced->Environment Variables->System Variables και θα τη δεις εκεί.Μετά Edit.

Άλλο η path άλλο η classpath.
User avatar
P@radox
Kilobyte level
Kilobyte level
Posts: 486
Joined: Tue Nov 09, 2004 4:50 pm
Academic status: Alumnus/a
Gender:
Location: Among The Few..
Contact:

Post by P@radox » Tue Apr 10, 2007 6:58 pm

alexo wrote:Adam εχθές έκανα αυτό το πράγμα και δεν έπαιζε.
Τελικά έκανα restart και έπαιξε. Τραγικό!

Αλλαγές σε environmental μεταβλητές το classpath.. απ όσο ξέρω χρειάζεται restart για να δουλέψουν.. καθώς και τόσες άλλες ρημαδοαλλάγές στα winXp..!
Image
P@radox's Space - Ελληνικότατο..!
User avatar
adam98
Gbyte level
Gbyte level
Posts: 1078
Joined: Tue May 02, 2006 2:58 pm

Post by adam98 » Tue Apr 10, 2007 7:41 pm

Όχι δεν χρειάζεται restart το Pc όταν κάνει τέτοια αλλάγή.Να κλείσεις το τερματικό ναί και να ανοίξεις άλλο.Για αύτο πιθανόν σου έπαιξε μετά το restart.
Πιο ανθρώπινα το classpath αλλάζει ως εξής:
start(to windows key sto keyboard)+break(to button sto keyboard)
Sto παράθυρο που ανοίγει πας στην καρτέλα για προχωρημένους και πατάς το κουμπί "μεταβλητές περιβάλλοντος", τα υπόλοιπα είναι νομίζω τετριμμένα :)

Edited 1:Είχα κάνει ένα λαθάκι και το διόρθωσα στην συντόμευση ελπίζω να πρόλαβα
H δύναμη της εξαπάτησης και της καταστροφής μπορεί να γοητεύσει μόνο μέτριους και αδύναμους
Τhe lessons we learn from pain are the ones that make us the strongest
User avatar
Serendipity
Gbyte level
Gbyte level
Posts: 1977
Joined: Tue Sep 19, 2006 11:16 pm
Academic status: Alumnus/a
Gender:
Location: Sweden
Contact:

Post by Serendipity » Tue Apr 10, 2007 8:27 pm

παιδια sorry αλλα διαβαζα και εγω για τα classpath αλλα δν καταλαβα ακριβως τι ειναι,μπορει να μου δωσει καποιος τα φωτα του?πχ με αυτο:To delete the current contents of the CLASSPATH variable, use these commands:

In Windows: C:\> set CLASSPATH=

τι ακριβως κανω?
-Two things are infinite: the universe and human stupidity; and I'm not sure about the universe.
--Albert Einstein--


ImageImage

My new blog Serendipity's thoughts!
User avatar
HdkiLLeR
Venus Project Founder
Venus Project Founder
Posts: 4356
Joined: Tue Jan 27, 2004 4:41 pm
Academic status: Alumnus/a
Gender:
Location: New York, NY
Contact:

Post by HdkiLLeR » Wed Apr 11, 2007 12:58 pm

Serendipity wrote:παιδια sorry αλλα διαβαζα και εγω για τα classpath αλλα δν καταλαβα ακριβως τι ειναι,μπορει να μου δωσει καποιος τα φωτα του?πχ με αυτο:To delete the current contents of the CLASSPATH variable, use these commands:

In Windows: C:\> set CLASSPATH=

τι ακριβως κανω?
Start->Run->cmd (το bold είναι αυτό που γράφεις στο run :)).
Θα σου ανοίξει ένα command window εκεί γράφεις αυτές τις εντολές.
Zifnab wrote:thnx alexo για ερώτηση και adam για απάντηση...Αλλά πως αλλάζει κάποιος την μεταβλητή? :roll:

Κάνω σε cmd set %PATH%= bla bla ή κάτι τέτοιο ???
Κάνεις set PATH=... (χωρίς τους delimiters %%)
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS d-->--- s+:+ a- C++(+++) BILS++++$ P--- L++++>+++++ E--- W+++ N+ o+ K w--
O M+ V-- PS++>+++ PE- Y++ PGP++ t+ 5+ X+ R* tv b++ DI- D+ G+++ e+++>++++ h r++ y++
------END GEEK CODE BLOCK------

"UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." -- Dennis Ritchie
User avatar
vangos
Mbyte level
Mbyte level
Posts: 571
Joined: Tue Mar 16, 2004 3:14 pm
Location: Heracleia@UTA

Post by vangos » Wed Apr 11, 2007 6:05 pm

HdkiLLeR wrote:Κάνεις set PATH=... (χωρίς τους delimiters %%)
Αν το κάνεις αυτό θα χαθούν όλες οι υπόλοιπες τιμές που είχε το PATH (τουλάχιστον μέχρι να κάνεις restart).

Το σωστό είναι να κάνεις το εξής:

set PATH=%PATH%;C:\myfiles\classes

όπου αντί για "C:\myfiles\classes" μπορείς να βάλεις ότι άλλο θες.

Αν αλλάξεις το path από Command Prompt δεν χρειάζεται (και δεν πρέπει) να κάνεις restart.
Διαφορετικά, αν το κάνεις με τον τρόπο που λέει ο alexo, μέσω των System Variables, χρειάζεται restart.

Παρόμοια γίνεται και για τις υπόλοιπες μεταβλητές που ενδεχομένως θες να θέσεις, π.χ. CLASSPATH, JAVA_HOME κλπ.
User avatar
HdkiLLeR
Venus Project Founder
Venus Project Founder
Posts: 4356
Joined: Tue Jan 27, 2004 4:41 pm
Academic status: Alumnus/a
Gender:
Location: New York, NY
Contact:

Post by HdkiLLeR » Thu Apr 12, 2007 1:47 pm

E μα αυτό ήθελε και ο Zifnab να αλλάξει την μεταβλητή PATH. Εάν ήθελε απλά να κάνει append κάτι εκεί, τότε αυτό γίνεται με τον τρόπο που αναφέρεις (που είναι το ισοδύναμο με το x=x+y).
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS d-->--- s+:+ a- C++(+++) BILS++++$ P--- L++++>+++++ E--- W+++ N+ o+ K w--
O M+ V-- PS++>+++ PE- Y++ PGP++ t+ 5+ X+ R* tv b++ DI- D+ G+++ e+++>++++ h r++ y++
------END GEEK CODE BLOCK------

"UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity." -- Dennis Ritchie
Post Reply

Return to “Προγραμματισμός”