Πρόβλημα στη Java: java.lang.OutOfMemoryError

Συζητήσεις για γλώσσες προγραμματισμού και θέματα σχετικά με προγραμματισμό.
Post Reply
User avatar
AnINffected
Gbyte level
Gbyte level
Posts: 1935
Joined: Fri Jul 30, 2004 7:12 am
Location: There and Back Again

Πρόβλημα στη Java: java.lang.OutOfMemoryError

Post by AnINffected » Tue Nov 23, 2004 1:49 pm

Έχει αντιμετωπίσει κάποιος από εσας java.lang.OutOfMemoryError?
Ο garbage collector είναι βοηθά ή καλύτερα να σκαρφιστώ δικά μου κόλπα;Τι θα προτείνατε;

Ευχαριστώ....
The Analytical Engine has no pretensions to originate anything. It can do whatever we know how to order it to perform (...)
Ada Lovelace


Θέλω και εγώ να παίξω D&D λέμε!!! :-( :-(
User avatar
silegav
Venus Project Founder
Venus Project Founder
Posts: 2098
Joined: Tue Mar 09, 2004 4:03 pm
Academic status: Alumnus/a
Location: The Center of the World -> Piraeus

Post by silegav » Tue Nov 23, 2004 2:33 pm

Τι του έκανες του μηχανήματος κακούργε δολοφόνε???
Εγώ πρώτη φορά το βλέπω το εν λόγω exception.
User avatar
dimitra
Mbyte level
Mbyte level
Posts: 591
Joined: Sat May 01, 2004 11:29 am
Academic status: MSc
Gender:

Post by dimitra » Tue Nov 23, 2004 3:21 pm

Η virtual machine έχει by default 64MB RAΜ προφανώς έχεις πέσει σε κάποιο loop στο οποίο δημιουργείς αντικείμενα και καταναλώνεις αυτό το χώρο.Για να το προσδιορίσεις μόνος σου το μέγεθος της μνήμης αυτής γράφεις java -X mxτο μεγεθος που θες. Πάντως καλό είναι να ψάξεις τον κώδικα σου και να ελέγξεις τα loop σου.
Η τιμωρία του ψεύτη δεν είναι ότι δεν τον πιστεύουν, αλλά ότι αυτός δεν μπορεί να πιστέψει.

Σω, Τζορτζ Μπέρναρντ
User avatar
ailouros
Gbyte level
Gbyte level
Posts: 1041
Joined: Fri Apr 30, 2004 4:36 pm
Academic status: Alumnus/a
Contact:

Post by ailouros » Tue Nov 23, 2004 5:49 pm

Έχω και γω ένα πρόβλημα.Έχω βάλει και βγάλει το JBuilder 100 φορές,έχω βάλει 4-5 διαφορετικά jdk's και οποιδήποτε πρόγραμμα και αν πάω να τρέξω λαμβάνω το εξής μήνυμα
java.lang.NoClassDefFoundError: magicsquare(όπου magic square το όνομα της εκάστοτε κλασης).
Με το NetBeans δεν έχω κάποιο πρόβλημα και όλα τρέχουν νορμάλ ,το JBuilder ούτε hello world..
User avatar
silegav
Venus Project Founder
Venus Project Founder
Posts: 2098
Joined: Tue Mar 09, 2004 4:03 pm
Academic status: Alumnus/a
Location: The Center of the World -> Piraeus

Post by silegav » Tue Nov 23, 2004 5:59 pm

To JBuilder έχει έναν δικό του compiler ενσωματωμένο. Πρόσεξε μήπως διαλέγει αυτόν εξ'ορισμού.
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 Nov 23, 2004 10:53 pm

ailouros wrote:Έχω και γω ένα πρόβλημα.Έχω βάλει και βγάλει το JBuilder 100 φορές,έχω βάλει 4-5 διαφορετικά jdk's και οποιδήποτε πρόγραμμα και αν πάω να τρέξω λαμβάνω το εξής μήνυμα
java.lang.NoClassDefFoundError: magicsquare(όπου magic square το όνομα της εκάστοτε κλασης).
Με το NetBeans δεν έχω κάποιο πρόβλημα και όλα τρέχουν νορμάλ ,το JBuilder ούτε hello world..
Πώς το τρέχεις;

ΥΓ: Το άλλο Prob με το .jar οκ έτσι;
-----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
ailouros
Gbyte level
Gbyte level
Posts: 1041
Joined: Fri Apr 30, 2004 4:36 pm
Academic status: Alumnus/a
Contact:

Post by ailouros » Tue Nov 23, 2004 11:41 pm

Κανω run using defaults ή κάπως έτσι.Το άλλο οκέι :-D

Τελικά κάτι βρήκα.Το JBuilder σε αντίθεση με άλλα ΙDE επιμένει αυστηρά σε projects,folders etc ,δηλαδή άμα ανοίξω ένα αρχείο halloworld.java και το κάνω run δεν θα το τρέξει.Πρέπει να πάει κάποιος στα Properties του project και στην συνέχεια να προσδιορίσει πού βρίσκεται ο πηγαίος κώδικας γιατί(ή το Working Directory) εξ ορισμού το JBuilder τον ψάχνει σε ένα άκυρο σημείο .Έτρεξε φτιάχνοντας έναν φάκελο βάζοντας μέσα μόνο το αρχείο java που θέλω να τρέξω(γιατί αν υπάρχει άλλο άσχετο μπερδέυεται).Είναι αρκετά σπαστική ή όλη διαδικασία αλλά τι να γίνει έχε χάρη που έχει καλύτερο interface από το NETBEANS. :cool:
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 Nov 24, 2004 9:34 am

Βασικά έχει πολές δυνατότητες όσον αφορά το Project. Αυτό που αλλάζει είναι ότι το τρέχει με διαφορετικό classpath. Όσον αφορά το Run έχεις την δυνατότητα να φτιάξεις run profiles. Σε κάθε profile ορίζεις πιό runtime environment θα χρησιμοποιήσεις με τι παραμέτρους κλπ πιά class περιέχει την main method κλπ κλπ.
-----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
PaP
Venus Project Founder
Venus Project Founder
Posts: 1077
Joined: Wed Apr 21, 2004 12:06 am
Academic status: Alumnus/a
Location: San Francisco
Contact:

Post by PaP » Wed Nov 24, 2004 10:49 am

JBuilder RuLeZzZzZ
User avatar
Einherjar
Venus Project Founder
Venus Project Founder
Posts: 3751
Joined: Tue Jan 27, 2004 4:42 pm
Academic status: Alumnus/a
Gender:
Location: Washington DC, USA
Contact:

Post by Einherjar » Wed Nov 24, 2004 11:10 pm

κααααλά.... περι ορέξεως....
[Better to understand a little than to misunderstand a lot]
User avatar
vagalati
Mbyte level
Mbyte level
Posts: 579
Joined: Tue Mar 16, 2004 2:46 pm
Location: 7000 miles away from aueb

Post by vagalati » Thu Nov 25, 2004 12:24 am

ailouros wrote:Κανω run using defaults ή κάπως έτσι.Το άλλο οκέι :-D

Τελικά κάτι βρήκα.Το JBuilder σε αντίθεση με άλλα ΙDE επιμένει αυστηρά σε projects,folders etc ,δηλαδή άμα ανοίξω ένα αρχείο halloworld.java και το κάνω run δεν θα το τρέξει.Πρέπει να πάει κάποιος στα Properties του project και στην συνέχεια να προσδιορίσει πού βρίσκεται ο πηγαίος κώδικας γιατί(ή το Working Directory) εξ ορισμού το JBuilder τον ψάχνει σε ένα άκυρο σημείο.
Βασικά όλα τα IDE που γνωρίζω (KDevelop, *Builder, VisualC++/Basic) δουλεύουν με Projects (και όχι mounts). Επίσης ΚΑΙ στο Netbeans πρέπει να αλλάζεις το Working Directory manually.
Ni!! Ni!! Ni!!
User avatar
ailouros
Gbyte level
Gbyte level
Posts: 1041
Joined: Fri Apr 30, 2004 4:36 pm
Academic status: Alumnus/a
Contact:

Post by ailouros » Thu Nov 25, 2004 2:29 am

Ισως δεν το διατύπωσα σωστά.Π.χ αν ανοίξεις 3 αρχεία στο VSTUDIO και πατήσεις compile και run ,θα σου πει ότι δεν υπάρχει project θες να το δημιουργήσω και όλα κυριλέ.Δεν έχω χρησιμοποιήσει άπειρα IDE αλλά βρήκα το ΝetBeans λιγάκι πιο "εξυπνο" και ακόμα πιο "'εξυπνο" είναι το JCreator.Εντωμεταξύ κάποιες φορές η λύση είναι πολύ απλή και εσύ ψάχνεις σαν τρελός κάτι το εντελώς άκυρο(περίπτωση μου).Θα υπερθεματίσω για το JBuilder ότι είναι πολύ καλό εμφανισιακά. :-D
User avatar
vagalati
Mbyte level
Mbyte level
Posts: 579
Joined: Tue Mar 16, 2004 2:46 pm
Location: 7000 miles away from aueb

Post by vagalati » Thu Nov 25, 2004 10:45 am

Πάντως για την εργασία στην εξόρυξη για το NetBeans έπρεπε να πάμε στα options και να θέσουμε το working directory στο default debuging και external execution γιατί έβλεπε τα αρχεία εισόδου/εξόδου των δεδομένων σε άσχετο σημείο και δεν μπορούσε να τα διαβάσει/γράψει επειδή απλά δεν υπήρχαν εκεί.
Ni!! Ni!! Ni!!
User avatar
ailouros
Gbyte level
Gbyte level
Posts: 1041
Joined: Fri Apr 30, 2004 4:36 pm
Academic status: Alumnus/a
Contact:

Post by ailouros » Thu Nov 25, 2004 2:50 pm

Πάντως για την εργασία στην εξόρυξη για το NetBeans έπρεπε να πάμε στα options και να θέσουμε το working directory στο default debuging και external execution γιατί έβλεπε τα αρχεία εισόδου/εξόδου των δεδομένων σε άσχετο σημείο και δεν μπορούσε να τα διαβάσει/γράψει επειδή απλά δεν υπήρχαν εκεί.
Εγώ έχω παρατηρήσει ότι όταν άνοιγα τα αρχεία της εργασίας με File->Open και εκτελούσα δεν έβρισκε τα αρχεία κειμένου που ήταν απαραίτητα ,ενω αν άνοιγα την main με διπλό κλικ τα έβρισκε.Προφανώς ένα τέτοιο άνοιγμα θέτει φάκελο εργασίας,αυτόν όπου βρίσκεται το αρχείο.Με File->Open από ότι φάνηκε όχι.Χειροκίνητα πως το θέτουμε;(Μήπως είναι το root directroy ,το working)?
Post Reply

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