Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
Greenpeace
Forum :: Programmazione.it :: Software :: problema con esecuzione codice java
Scritto da Giuseppe Lorusso a.k.a. piedeamaro il 03-12-2009 ore 15:39
Intel Parallel Studio XE
salve, sono all' inizio dello studio di java, e sto sistemando i pc per poter iniziare, ma ho un problema che non riesco a risolvere.
il codice compilato correttamente non viene eseguito.
è un codice si esempio , giusto per controllare se tutto funziona.

vi metto lo screen-shot della schell:

Microsoft Windows [Versione 6.0.6002]
Copyright (c) 2006 Microsoft Corporation. Tutti i diritti riservati.

C:Usersgiuseppe>echo %classpath%
%classpath%

C:Usersgiuseppe>echo %CLASSPATH%
%CLASSPATH%

C:Usersgiuseppe>SET
%CLASSPATH%=C:ProgrammiJavajdk1.6.0_12lib
ALLUSERSPROFILE=C:ProgramData
APPDATA=C:UsersgiuseppeAppDataRoaming
CommonProgramFiles=C:Program FilesCommon Files
COMPUTERNAME=PC-GIUSEPPE
ComSpec=C:Windowssystem32cmd.exe
configsetroot=C:WindowsConfigSetRoot
DFSTRACINGON=FALSE
FP_NO_HOST_CHECK=NO
HOMEDRIVE=C:
HOMEPATH=Usersgiuseppe
LOCALAPPDATA=C:UsersgiuseppeAppDataLocal
LOGONSERVER=\PC-GIUSEPPE
NUMBER_OF_PROCESSORS=2
OS=Windows_NT
Path=C:Program FilesPC Connectivity Solution;C:Windowssystem32;C:Windows;C
:WindowsSystem32Wbem;C:Program FilesATI TechnologiesATI.ACECore-Static;C:
Program FilesCommon FilesDivX Shared;C:Program FilesJavajdk1.6.0_12bin
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
PROCESSOR_ARCHITECTURE=x86
PROCESSOR_IDENTIFIER=x86 Family 17 Model 3 Stepping 1, AuthenticAMD
PROCESSOR_LEVEL=17
PROCESSOR_REVISION=0301
ProgramData=C:ProgramData
ProgramFiles=C:Program Files
PROMPT=$P$G
PUBLIC=C:UsersPublic
SESSIONNAME=Console
SystemDrive=C:
SystemRoot=C:Windows
TEMP=C:UsersgiuseppeAppDataLocalTemp
TMP=C:UsersgiuseppeAppDataLocalTemp
TRACE_FORMAT_SEARCH_PATH=\NTREL202.ntdev.corp.microsoft.com4F18C3A5-CA09-4DBD-
B6FC-219FDD4C6BE0TraceFormat
USERDOMAIN=PC-giuseppe
USERNAME=giuseppe
USERPROFILE=C:Usersgiuseppe
windir=C:Windows

C:Usersgiuseppe>


C:Usersgiuseppe>d:

D:>cd esejava

D:esejava>dir
Il volume nell'unità D è DATA
Numero di serie del volume: 0A72-5C1E

Directory di D:esejava

03/12/2009 13.48 .
03/12/2009 13.48 ..
03/12/2009 13.48 434 test.class
03/12/2009 13.45 159 test.java
2 File 593 byte
2 Directory 163.112.878.080 byte disponibili


D:esejava>java test
Exception in thread "main" java.lang.NoClassDefFoundError: test (wrong name: tes
t/test)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Could not find the main class: test. Program will exit.

D:esejava>


// primo testo java

package test;

public class test{

public static void main(String[] args){

System.out.println("prima prova stampa con java");
}
}
Precedente: Apple MacMini, ke ne dite
Successiva: Ricerca programmatore Visual Basic - Civitavecchia (RM)
Intervento di Alessandro Colombo a.k.a. alelinux del 03-12-2009 ore 21:37, Potenza (PZ)
Plebeo
Plebeo

(4 interventi)
Iscritto il 30-11-2009
Ciao Guseppe!!!
Allora ti consiglio di impostare la variabile d'ambiente PATH, con il percorso in cui è installato il jdk 1.6.*. ad esempio "C:Program Files (x86)Javajdk1.6.0_16bin"


// primo testo java

package test;

public class Test{

public static void main(String[] args){
System.out.println("prima prova stampa con java");
}
}



e compilare il tuo programma con il comando

c:>javac test.Test.java

e poi esegui con

c:>java test


Mi raccomando devi essere nella cartella dove risiede il tuo file quando compili.

se hai problemi fammi sapere :-)

Alessandro
Intervento di Giuseppe Lorusso a.k.a. piedeamaro del 03-12-2009 ore 23:15, Melfi (PZ)
Plebeo
Plebeo
(4 interventi)
Iscritto il 22-01-2004
alelinux ha scritto:
Ciao Guseppe!!!
Allora ti consiglio di impostare la variabile d'ambiente PATH, con il percorso in cui è installato il jdk 1.6.*. ad esempio "C:Program Files (x86)Javajdk1.6.0_16bin"


// primo testo java

package test;

public class Test{

public static void main(String[] args){
System.out.println("prima prova stampa con java");
}
}



e compilare il tuo programma con il comando

c:>javac test.Test.java

e poi esegui con

c:>java test


Mi raccomando devi essere nella cartella dove risiede il tuo file quando compili.

se hai problemi fammi sapere :-)

Alessandro

il path è impostato nella cartella in sui si trova il jdk.
infatti la compilazione va ok .

mi spieghi perché se faccio C:>echo %CLASSPATH%
mi da errore , mentre se do il comando SET la variabile %CLASSPATH% appare nel listato ?
Questo solo con Vista , mentre con XP non c'è discrepanza

Ma cmq Anche con XP (altro PC) ho lo stesso comportamento, cioè compila ma ho l'errore con il comando Java.

Altra anomalia nel registro di WinXP (con Vista non ho verificato) appaiono meno percorsi nel path di quelli con il comando SET .

ciao
Intervento di Alessandro Colombo a.k.a. alelinux del 03-12-2009 ore 23:46, Potenza (PZ)
Plebeo
Plebeo

(4 interventi)
Iscritto il 30-11-2009
C:>echo %CLASSPATH%
serve per specificare alla JVM dove si trova il file da compilare. Invece il comando SET imposta il CLASSPATH a tempo di esecuzione.
L'errore che ti viene fuori non è un'errore grave, ma viene lanciata una exception.

Non perdere tempo con questo problema. Setta la variabile d'ambiente con il percorso in cui si trova la tua JVM e non avrai problemi con la compilazione e l'esecuzione.
Fidati!!!;-)

Alessandro
Intervento di Giuseppe Lorusso a.k.a. piedeamaro del 04-12-2009 ore 11:36, Melfi (PZ)
Plebeo
Plebeo
(4 interventi)
Iscritto il 22-01-2004
alelinux ha scritto:
C:>echo %CLASSPATH%
serve per specificare alla JVM dove si trova il file da compilare. Invece il comando SET imposta il CLASSPATH a tempo di esecuzione.
L'errore che ti viene fuori non è un'errore grave, ma viene lanciata una exception.

Non perdere tempo con questo problema. Setta la variabile d'ambiente con il percorso in cui si trova la tua JVM e non avrai problemi con la compilazione e l'esecuzione.
Fidati!!!;-)

Alessandro

la compilazione è ok, da prima.

echo mostra il valore della "variabile impostata", infatti se tutto è in regola , echo %CLASSPATH% mostra il percorso della %CLASSPATH%.

cmq i percorsi sono ok , perché se lancio da consol i comandi javac e java senza il percorso dei file , l'output che ottengo è l'help per i rispettivi comandi .
Intervento di Alessandro Colombo a.k.a. alelinux del 05-12-2009 ore 15:13, Potenza (PZ)
Plebeo
Plebeo

(4 interventi)
Iscritto il 30-11-2009
Non so cosa dirti. Non capisco perchè quando lanci javac e java ti escano gli --help.
verifica che la sintassi per la compilazione sia corretta.
Alessandro
Intervento di Giuseppe Lorusso a.k.a. piedeamaro del 08-12-2009 ore 10:13, Melfi (PZ)
Plebeo
Plebeo
(4 interventi)
Iscritto il 22-01-2004
alelinux ha scritto:
Non so cosa dirti. Non capisco perchè quando lanci javac e java ti escano gli --help.
verifica che la sintassi per la compilazione sia corretta.
Alessandro

in qualsiasi compilatore (non solo per java)se non specifichi un file su cui eseguire l'operazione , viene visualizzato l'help.
Intervento di Fabrizio Alonzi a.k.a. fabral09 del 14-12-2009 ore 12:11, Sora (FR)
Cavaliere
Cavaliere

(103 interventi)
Iscritto il 24-06-2004
FORSE IL PROBLEMA E' L'ISTRUZIONE PACKAGE. PROVA A RIMUOVERLA, RICOMPILARE IL PROGRAMMA CON JAVAC E POI AD ESEGUIRLO CON JAVA.EXE
Intervento di Davide Panceri a.k.a. davidepanceri del 31-12-2009 ore 09:57, Milano (MI)
Barone
Barone
(232 interventi)
Iscritto il 13-09-2004
forse è meglio usare netbeans
fabral09 ha scritto:
FORSE IL PROBLEMA E' L'ISTRUZIONE PACKAGE. PROVA A RIMUOVERLA, RICOMPILARE IL PROGRAMMA CON JAVAC E POI AD ESEGUIRLO CON JAVA.EXE
Copyright Programmazione.it™ 1999-2013. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.274 secondi.