Fast&Furious
12-10-2006, 20:51
ragazzi ho un problema con la classe System (package java.lang), ogni volta che scrivendo un file mi capita di dover sfruttare qualche metodo della suddetta classe mi compare errore in fase dim compliazione: Exception in thread "main" java.lang.NoClassDefFoundError: directory del file.java
Non sono riuscito a capire il problema, all'inizio pensavo che sbagliassi io qualcosa, dopo ho copiato ed incollato un file trovato in rete che usa molti (se non tutti) i metodi della classe System e, al contrario di come pensavo, non compila neanche questo:
public class Sistema
{
public static void main(String[] arg)
{
// Cambio lo standard output, uso il file Sistema.txt
File outFile=new File("Sistema.txt");
FileOutputStream fw;
try {fw=new FileOutputStream(outFile) ;}
catch (IOException e)
{fw=null;};
PrintStream Output=new PrintStream(fw);
System.setOut(Output);
// Scrivo sul nuovo standard output:
// Tempo:
long tempo=System.currentTimeMillis();
System.out.println("Tempo in millisecondi: "+tempo);
long t1=tempo/1000;
System.out.println("Tempo in secondi: "+t1);
long sec=t1%60;
long t3=t1/60;
long min=t3%60;
long t4=t3/60;
System.out.println("Tempo in ore h"+t4+" m"+min+" s"+sec);
System.out.println("nE' il tempo passato dal 1/1/1970 ad ora.n");
// Proprietà del sistema:
System.out.println("nProprieta' del sistema:n");
String tmp;
System.out.println("ntJAVAn");
tmp=System.getProperty("java.version ");
System.out.println("Versione dell'ambiente di Java Runtime: "+tmp);
tmp=System.getProperty("java.vendor");
System.out.println("Distributore dell'ambiente di Java Runtime: "+tmp);
tmp=System.getProperty("java.vendor.url");
System.out.println("URL del distributore di Java: "+tmp);
tmp=System.getProperty("java.home");
System.out.println("Directory dove e' installato Java: "+tmp);
tmp=System.getProperty("java.vm.specification.version");
System.out.println("Versione delle specifiche della Java Virtual Machine: "+tmp);
tmp=System.getProperty("java.vm.specification.vendor");
System.out.println("Distributore delle specifiche della Java Virtual Machine: "+tmp);
tmp=System.getProperty("java.vm.specification.name");
System.out.println("Nome delle specifiche della Java Virtual Machine: "+tmp);
tmp=System.getProperty("java.vm.version");
System.out.println("Versione della implementazione della Java Virtual Machine: "+tmp);
tmp=System.getProperty("java.vm.vendor" );
System.out.println("Distributore della implementazione della Java Virtual Machine: "+tmp);
tmp=System.getProperty("java.vm.name");
System.out.println("Nome della implementazione della Java Virtual Machine: "+tmp);
tmp=System.getProperty("java.specification.version");
System.out.println("Versione dell'ambiente di Java Runtime: "+tmp);
tmp=System.getProperty("java.specification.vendor");
System.out.println("Distributore dell'ambiente di Java Runtime Java Runtime: "+tmp);
tmp=System.getProperty("java.specification.name" );
System.out.println("Nome dell'ambiente di Java Runtime: "+tmp);
System.out.println("ntCLASSIn");
tmp=System.getProperty("java.class.version");
System.out.println("Versione delle classi di Java: "+tmp);
tmp=System.getProperty("java.class.path");
System.out.println("Pathname delle classi di Java: "+tmp);
System.out.println("ntSISTEMA OPERATIVOn");
tmp=System.getProperty("os.name");
System.out.println("Nome Sistema Operativo: "+tmp);
tmp=System.getProperty("os.arch");
System.out.println("Architettura del Sistema Operativo: "+tmp);
tmp=System.getProperty("os.version");
System.out.println("Versione del sistema Operativo: "+tmp);
tmp=System.getProperty("file.separator");
System.out.println("Separatore di File: "+tmp);
tmp=System.getProperty("path.separator");
System.out.println("Separatore di Pathname: "+tmp);
tmp=System.getProperty("line.separator");
System.out.println("New Line: "+tmp);
System.out.println("ntUTENTEn");
tmp=System.getProperty("user.name");
System.out.println("Account name dell'utente: "+tmp);
tmp=System.getProperty("user.home");
System.out.println("Home directory dell'utente: "+tmp);
tmp=System.getProperty("user.dir");
System.out.println("Working directory dell'utente: "+tmp);
}
}
il problema si è presentato quando sul pc di un amico abbiam dovuto usare un metodo della classe System e abbiamo notato che a lui non compilava, dopo ho notato che anche sul mio pc ho lo stesso errore.
Da cosa può dipendere?
Grazie
Non sono riuscito a capire il problema, all'inizio pensavo che sbagliassi io qualcosa, dopo ho copiato ed incollato un file trovato in rete che usa molti (se non tutti) i metodi della classe System e, al contrario di come pensavo, non compila neanche questo:
public class Sistema
{
public static void main(String[] arg)
{
// Cambio lo standard output, uso il file Sistema.txt
File outFile=new File("Sistema.txt");
FileOutputStream fw;
try {fw=new FileOutputStream(outFile) ;}
catch (IOException e)
{fw=null;};
PrintStream Output=new PrintStream(fw);
System.setOut(Output);
// Scrivo sul nuovo standard output:
// Tempo:
long tempo=System.currentTimeMillis();
System.out.println("Tempo in millisecondi: "+tempo);
long t1=tempo/1000;
System.out.println("Tempo in secondi: "+t1);
long sec=t1%60;
long t3=t1/60;
long min=t3%60;
long t4=t3/60;
System.out.println("Tempo in ore h"+t4+" m"+min+" s"+sec);
System.out.println("nE' il tempo passato dal 1/1/1970 ad ora.n");
// Proprietà del sistema:
System.out.println("nProprieta' del sistema:n");
String tmp;
System.out.println("ntJAVAn");
tmp=System.getProperty("java.version ");
System.out.println("Versione dell'ambiente di Java Runtime: "+tmp);
tmp=System.getProperty("java.vendor");
System.out.println("Distributore dell'ambiente di Java Runtime: "+tmp);
tmp=System.getProperty("java.vendor.url");
System.out.println("URL del distributore di Java: "+tmp);
tmp=System.getProperty("java.home");
System.out.println("Directory dove e' installato Java: "+tmp);
tmp=System.getProperty("java.vm.specification.version");
System.out.println("Versione delle specifiche della Java Virtual Machine: "+tmp);
tmp=System.getProperty("java.vm.specification.vendor");
System.out.println("Distributore delle specifiche della Java Virtual Machine: "+tmp);
tmp=System.getProperty("java.vm.specification.name");
System.out.println("Nome delle specifiche della Java Virtual Machine: "+tmp);
tmp=System.getProperty("java.vm.version");
System.out.println("Versione della implementazione della Java Virtual Machine: "+tmp);
tmp=System.getProperty("java.vm.vendor" );
System.out.println("Distributore della implementazione della Java Virtual Machine: "+tmp);
tmp=System.getProperty("java.vm.name");
System.out.println("Nome della implementazione della Java Virtual Machine: "+tmp);
tmp=System.getProperty("java.specification.version");
System.out.println("Versione dell'ambiente di Java Runtime: "+tmp);
tmp=System.getProperty("java.specification.vendor");
System.out.println("Distributore dell'ambiente di Java Runtime Java Runtime: "+tmp);
tmp=System.getProperty("java.specification.name" );
System.out.println("Nome dell'ambiente di Java Runtime: "+tmp);
System.out.println("ntCLASSIn");
tmp=System.getProperty("java.class.version");
System.out.println("Versione delle classi di Java: "+tmp);
tmp=System.getProperty("java.class.path");
System.out.println("Pathname delle classi di Java: "+tmp);
System.out.println("ntSISTEMA OPERATIVOn");
tmp=System.getProperty("os.name");
System.out.println("Nome Sistema Operativo: "+tmp);
tmp=System.getProperty("os.arch");
System.out.println("Architettura del Sistema Operativo: "+tmp);
tmp=System.getProperty("os.version");
System.out.println("Versione del sistema Operativo: "+tmp);
tmp=System.getProperty("file.separator");
System.out.println("Separatore di File: "+tmp);
tmp=System.getProperty("path.separator");
System.out.println("Separatore di Pathname: "+tmp);
tmp=System.getProperty("line.separator");
System.out.println("New Line: "+tmp);
System.out.println("ntUTENTEn");
tmp=System.getProperty("user.name");
System.out.println("Account name dell'utente: "+tmp);
tmp=System.getProperty("user.home");
System.out.println("Home directory dell'utente: "+tmp);
tmp=System.getProperty("user.dir");
System.out.println("Working directory dell'utente: "+tmp);
}
}
il problema si è presentato quando sul pc di un amico abbiam dovuto usare un metodo della classe System e abbiamo notato che a lui non compilava, dopo ho notato che anche sul mio pc ho lo stesso errore.
Da cosa può dipendere?
Grazie