Newsgroup: it.comp.java
Titolo: problema che proprio non capisco :-(((

Ciao, ho bisogno del vostro aiuto !
Ho istallato jdk 1.2.2 ma temo che ci siano parecchi problemi :-(
Andiamo per ordine: 
-ho istallato jdk e jre nelle directory consigliate dal programma di 
istallazione;
-ho aggiunto correttamente la directory dove sono presenti i files javac 
, java & co. nell'istruzione PATH nell'autoexec.bat ;
-ho scritto (copiato...) correttamente il programmino HelloWord e l'ho 
compilato;
-Il bytecode non ne vuole sapere di funzionare, sia col comando java, sia 
richiamato da una pagina web con appletviewer che da netscape.
 Dall'applet viewer mi si danno i seguenti risultati:
-------------------------------------------------------------------------
---
load: HelloWord.class is not public or has no public constructor.
java.lang.IllegalAccessException: HelloWord
        at java.lang.Class.newInstance0(Native Method)
        at java.lang.Class.newInstance(Class.java:241)
        at sun.applet.AppletPanel.createApplet(AppletPanel.java:508)
        at sun.applet.AppletPanel.runLoader(AppletPanel.java:444)
        at sun.applet.AppletPanel.run(AppletPanel.java:282)
        at java.lang.Thread.run(Thread.java:479)
-------------------------------------------------------------------------
---
mentre con il comando java applicato a HelloWord.class mi da' come 
errore:
-------------------------------------------------------------------------
----
Exception in thread "main" java.lang.NoClassDefFoundError: 
HelloWord/class
-------------------------------------------------------------------------
----
A naso direi che la compilazione č sbagliata, ma se do l'opzione -g 
[debug] a javac non mi viene data nessuna risposta, mentre con -verbose 
ottengo:
-------------------------------------------------------------------------
--------------------
C:\java>javac -verbose HelloWord.java
[parsed HelloWord.java in 550 ms]
[loaded C:\JDK1.2.2\JRE\lib\rt.jar(java/lang/Object.class) in 60 ms]
[checking class HelloWord]
[loaded C:\JDK1.2.2\JRE\lib\rt.jar(java/lang/String.class) in 0 ms]
[loaded C:\JDK1.2.2\JRE\lib\rt.jar(java/io/Serializable.class) in 0 ms]
[loaded C:\JDK1.2.2\JRE\lib\rt.jar(java/lang/Comparable.class) in 0 ms]
[loaded C:\JDK1.2.2\JRE\lib\rt.jar(java/lang/System.class) in 0 ms]
[loaded C:\JDK1.2.2\JRE\lib\rt.jar(java/io/PrintStream.class) in 50 ms]
[loaded C:\JDK1.2.2\JRE\lib\rt.jar(java/io/FilterOutputStream.class) in 0 
ms]
[loaded C:\JDK1.2.2\JRE\lib\rt.jar(java/io/OutputStream.class) in 0 ms]
[loaded C:\JDK1.2.2\JRE\lib\rt.jar(java/io/IOException.class) in 0 ms]
[loaded C:\JDK1.2.2\JRE\lib\rt.jar(java/lang/Exception.class) in 0 ms]
[loaded C:\JDK1.2.2\JRE\lib\rt.jar(java/lang/Throwable.class) in 0 ms]
[wrote HelloWord.class]
[done in 1150 ms]
-------------------------------------------------------------------------
---------------------
Per concludere dico che uso jdk su "windows 98 se" aggiornato con windows 
update di tutti gli aggiornamenti possibili... .
Credo di essere stato completo nell'esposizione del problema...chi mi 
aiuta ?
Grazie, 
         Domenico Tanzarella

          Domenico Tanzarella
Hai fatto "java HelloWorld.class" oppure "java HelloWorld" per eseguire il
codice?
--
Ugo
__________________________________________________________________________
"La perfezione si ottiene non quando non c'č nient'altro da aggiungere,
 bensě quando non c'č piů niente da togliere." Antoine de Saint-Exupéry
__________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Enterprise Java Consulting
@mail: Ugo.L...@Flashnet.it
Home Page: 
http://www.ugolandini.net
Mentoring: 
http://www.projectoo.com
Work Phone: 02/61860647-6-4 06/58332267
Cell Phone: 0347/6310749 - 0347/4783580
Fax Phone: 02/700 413 187
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Ed altra domanda, sei sicuro che il programmino sia giusto?
Prova a postare il codice, perche' dagli errori che ti segnala, secondo me
manca qualche 'public' nel tuo codice.
Davide

, 
davide_...@usa.net
 says...

Ecco il codice...
---------------------------------------------------
class HelloWord{
public static void  main (String args[]){
System.out.println(" Hello Word ! ");
}
}
--------------------------------------------------
Grazie,
         Domenico Tanzarella

  bensì quando non c'è più niente da togliere." Antoine de Saint-Exupéry



certo che sì cosa?
Non sono intercambiabili, devi fare "java HelloWorld" e non esplicitare il
.class.
Comunque prova a scrivere "public class HelloWorld" e non "class HelloWorld" nel
tuo codice ;)


prova a metter public class invece che solo class. Altrimenti la classe
diventa private...
Davide

 --------------------------------------------------
-- 
Cristian Veronesi - CRPA SpA - Reggio Emilia, Italy
Whatever it is, I'm against it (Groucho Marx)

Taghe' rason! manca pura la elle! si vede che son proprio fuso oggi!
Davide

Ok Ragazzi, Grazie, almeno "hello word" [accidenti al mio inglese...si lo 
so...doveva essere WorLd ;-)) ] adesso funziona, dalla linea di comando, 
attraverso il comando:
java HelloWord , senza l'estensione .class al file .
Ho provato ad inserire "public" nella riga "class HelloWord" , tuttavia 
non riesco ancora a far partire il programmino con il comando:
java HelloWord.class
Perché ancora non funziona anche cosě, ora che ho inserito "public" prima 
di " class HelloWord" ???
Non parliamo di far partire il programma da una pagina html, ancora non 
funziona "nud" :-(
Comunque Grazie,
                   Ciao,
                           Domenico Tanzarella

 java HelloWord.class
infatti il comando "java Ciccio"  cerca nelle directory indicate nel
CLASSPATH una classe che si chiama "Ciccio.class", e se tale classe viene
trovata la esegue tramite una Java Virtual Machine;
quindi il comando "java HelloWord.class" cerca nelle directory indicate nel
CLASSPATH una classe che si chiama "HelloWord.class.class", e non trovando
nessun file con questo nome (a meno che tu non abbia compilato un file che si
chiama "HelloWord.class.java") non
manda in esecuzione il programma ma ti segnala il problema con un messaggio
di errore.

 di errore.
-- 


 Queste sono le basi, roba da pagina 1 di qualsiasi tutorial decente, anche prima di scrivere "HelloWorld.java" un minimo di studio ci vuole...
Sono daccordo anche su questo!
Ciao
Ettore

 Ciao, Cris

 
Ehm, scusa, io facevo "java HelloWord.class", ma evidentemente era 
sbagliato !
[non avevo letto bene il tuo msg :-( ]
Ciao,
     Domenico


 dell'autore del libro :-(
-- 


La polemica non era nei tuoi confronti, ci mancherebbe, era nei confronti 
delle aziende che spacciano come semplici e immediate cose che semplici e 
immediate non sono. Io avevo in mente soprattutto Mr. Gates e i suoi 
ambientucci di sviluppo, ma mi danno un po' fastidio anche tutti questi titoli 
che vedo in giro tipo "Java in 24 ore", "Java senza fatica", ecc. Forse sono io 
che sono un po' snob, probabilmente si tratta di testi validi che hanno titoli 
cosi` solo per motivi di marketing... 
LOL In effetti "Java in 24 ore" mi ha sempre ricordato "Chitarristi in 24 
ore"... magari. ;-)
-- 
God is Real, unless declared Integer.
ObjectZone - 
http://space.tin.it/computer/csadun/

 Ciao e buono studio, Cris
Grazie, sto prendendo la rincorsa per la tesi di laurea...
Domenico