PDA

View Full Version : errore java cosa vuol dire?


texerasmo
09-06-2004, 14:56
riesco a compilare questa classe java ho importato i miei jar nel classpath ma quando lancio la classe mi da il seguente errore:


C:\j2sdk1.4.2_04\bin>java c:\xslmino\classes\CreaXML provaeramo.txt
Exception in thread "main" java.lang.NoClassDefFoundError: c:\xslmino\classes\Cr
eaXML


ecco la classe java


import java.io.*;
import java.util.*;

/*
IMPORTIAMO I PACKAGE NECESSARI PER
LAVORATE CON GLI XML
/**/
import org.jdom.*;
import org.jdom.output.XMLOutputter;

public class CreaXML
{
public CreaXML(String nomeFile)
{
try
{
writeFile(nomeFile);
}catch(Exception e)
{
System.err.println ("errore: "+e);
}
}

public void writeFile(String path) throws Exception
{
File fileTmp = new File(path);

/*
ISTANZIAMO UN OGGETTO Element
PASSANDOGLI LA STRINGA
CHE SARA' IL NOME DEL NOSTRO SUPERTAG
/**/
Element root = new Element("root");


/*
ISTANZIAMO UN OGGETTO Document
PASSANDOGLI COME PARAMETRO L'OGGETTO
ELEMENT PRECEDENTEMENTE ISTANZIATO
/**/
Document documento = new Document(root);

/*
AGGIUNGIAMO AL NOSTRO ELEMENT UN
ATTRIBUTO:
<root attributo=valore>
/**/
root = root.setAttribute( "attributo","valore");

/*
ISTANZIAMO ALTRI OGGETTI Element
PASSANDOGLI LE STRINGHE
CHE SARANNO I NOMI DEI NOSTRI TAG
/**/
Element initparam = new Element("init-param");
Element paramname = new Element("param-name");
Element paramvalue = new Element("param-value");

/*
ASSEGNAMO DEI VALORI AI
TAG param-name E param-value:
<param-name>mio nome</param-name>
/**/
paramname.addContent("mio nome");
paramvalue.addContent("mio valore");

/*
AGGIUNGIAMO I TAG param-name E
Param-value AL TAG init-param
/**/
initparam.addContent(paramname);
initparam.addContent(paramvalue);

/*
AGGIUNGIAMO IL TAG init-param
AL SUPERTAG root
/**/
root.addContent(initparam);

BufferedWriter out = null;

try
{
out = new BufferedWriter(new FileWriter(path));

/*
ISTANZIAMO LA CLASSE XMLOutputter
CHE CI PERMETTE DI FORMATTARE IL
FILE XML.
/**/
XMLOutputter xout = new XMLOutputter();
xout.setIndent(true);
xout.setNewlines(true);

/*
CON QUESTA ISTRUZIONE SCRIVIAMO
IL DOCUMENTO documento IN UN
BufferedWriter CHE CREA IL FILE
TRAMITE UN FileWriter
/**/
xout.output(documento,out);
}catch (IOException e)
{
System.err.println ("errore: "+e);
}finally
{
try
{
out.close();
}catch(IOException e)
{
System.err.println ("errore: "+e);
}
}
}

public static void main(String args[])
{
CreaXML crea = new CreaXML(args[0]);
}
}



ecco come importo i jar

C:\j2sdk1.4.2_04\bin>set CLASSPATH="c:\xslmino\lib\xerces.jar";c:\xslmino\lib\jd
om.jar;"c:\C:\j2sdk1.4.2_04\bin\";.

kingv
09-06-2004, 15:10
Originariamente inviato da texerasmo
C:\j2sdk1.4.2_04\bin>set CLASSPATH="c:\xslmino\lib\xerces.jar";c:\xslmino\lib\jd
om.jar;"c:\C:\j2sdk1.4.2_04\bin\";.

"c:\C:\j2sdk1.4.2_04\bin\";


cos'e' 'sta roba???

kingv
09-06-2004, 15:11
non limitarti a correggerla, toglila proprio ;)

texerasmo
09-06-2004, 15:22
in efetti era così ma ho fatto un copia e incolla errato.
La cosa strana è che non riesco ad installare java su questo pc winzoz...
ma se vado sotto questa di
C:\j2sdk1.4.2_04\bin\ trovo java.exe
allora ho fatto

set JAVA_HOME="C:\j2sdk1.4.2_04\";

ok?


la cosa ancora più strana è che non stante java non si sia installato corretamenterisco a far partire i jar.
ora per quell errore da cosa dipende?

kingv
09-06-2004, 15:29
fai una prova, mettiti dove hai il .class e lancia il tuo programma con:


c:\j2sdk1.4.2_04\bin\java -classpath .;c:\xslmino\lib\xerces.jar;c:\xslmino\lib\jdom.jar CreaXML

texerasmo
09-06-2004, 15:45
niente da fare ho provato pure con il mitico

public class Hello{
public static void main(String[] args){
System.out.println("Hello, World!");
}
}


la cosa stra è che se lancio java mi dice che è un comando inesistente ma se vado a vedere cosa c'è installato su questo pc trovo..

kingv
09-06-2004, 15:49
ho paura che il jdk sia un pochino sputt@n@to...

cancellando le directory a mano non riesci a reinstallarlo?

Molz
09-06-2004, 15:51
Se nn trova il comando java e' perke' nn e' inserito nel path, ho visto ke hai settato la variabile JAVA_HOME, ma hai aggiunto al PATH %JAVA_HOME%\bin?

A qesto punto se vai nella cartella con Hello.class e scrivi
java Hello
T funziona?

kingv
09-06-2004, 16:03
Originariamente inviato da kingv

c:\j2sdk1.4.2_04\bin\java -classpath .;c:\xslmino\lib\xerces.jar;c:\xslmino\lib\jdom.jar CreaXML



ma che messaggio ti dice con questo?

texerasmo
09-06-2004, 16:11
http://java.sun.com/iquali del menu a sx devo scaricare?

texerasmo
09-06-2004, 16:12
scusate

http://java.sun.com/index.jsp
qualide l menua sx devo scaricare?


mi sa che si è spu........ java

cn73
09-06-2004, 16:58
set JAVA_HOME=C:\j2sdk1.4.1
set PATH=%JAVA_HOME%\bin
set CLASSPATH=quelloCheTiServe;. (. è la dir corrente)


Scaricati il JSDK da http://java.sun.com/j2se/1.4.2/download.html