[ Dejan Topalovic @ 27.12.2004. 23:23 ] @
Pokusavam da savladam Tomcat + Ant + J2EE (Servleti, EJB i td.), ali mi ne polazi bas za rukom :(

Skinuo sam JDK 5 i instalirao u C:\Programme\Java\jdk-1_5_0_01 , a osim toga imam i JRE u C:\Programme\Java\jre1.5.0_01
Instalirao sam Tomcat 5.5.4 onako kako je pisalo u uputstvu i to u direktorij C:\Tomcat-5-5-4.
Ant 1.6.2 sam instalirao u C:\apache-ant-1.6.2.

Podesio sam slijedece enviroment varijable:
Name: ANT_HOME
Value: C:\apache-ant-1.6.2

Name: JAVA_HOME
Value: C:\Programme\Java\jdk-1_5_0_01

Name: PATH
Value: izmedju ostalog, dodao sam i C:\Programme\Java\jdk-1_5_0_01\bin;C:\apache-ant-1.6.2\bin


Pokusavam da napravim aplikaciju po standardnom podesavanju:
- u direktoriju C:\Tomcat-5-5-4\webapps sam kreirao direktorij StockWatcher i u njemu datoteke build.xml i build.properties, te poddirektorijume src, docs i web (u web sam stavio WEB-INF i u njemu poddirektorij classes) i td.
- pokrenem deploy i dobijem slijedece:
Code:

C:\Tomcat-5-5-4\webapps\StockWatcher>ant -f build.xml install
Buildfile: build.xml

prepare:

compile:
    [javac] Compiling 1 source file to C:\Tomcat-5-5-4\webapps\StockWatcher\build\WEB-INF\classes
    [javac] C:\Tomcat-5-5-4\webapps\StockWatcher\src\MyServlet.java:5: cannot access java.io.Serializable
    [javac] bad class file: C:\Programme\Java\jdk-1_5_0_01\jre\lib\rt.jar(java/io/Serializable.class)
    [javac] class file has wrong version 49.0, should be 48.0
    [javac] Please remove or make sure it appears in the correct subdirectory of the classpath.
    [javac] public class MyServlet extends HttpServlet {
    [javac]        ^
    [javac] 1 error

BUILD FAILED
C:\Tomcat-5-5-4\webapps\StockWatcher\build.xml:49: Compile failed; see the compiler error output for details.

Total time: 3 seconds

Google-ao sam, ali ne nadjoh rjesenje koje bi mi pomoglo. Jedino sto sam zakljucio iz poruka drugih osoba sa slicnim problemom je to, da postoji neka razlika u verzijama kompajliranih klasa (nesto je kompajlirano sa JDK 1.4.2, a nesto sa JDK 5) uslijed cega dolazi do navedenog konflikta.

Da li je neko imao slican problem i da li zna rjesenje?

Ja cu nastaviti sa otkrivanjem greske, pa ako otkrijem, javicu :)

Hvala svima unaprijed.

[Ovu poruku je menjao StRiPy dana 28.12.2004. u 03:33 GMT+1]
[ Dejan Topalovic @ 28.12.2004. 02:26 ] @
Evo da odgovorim samom sebi, a nadam se da ce koristiti i nekom drugom u slucaju da naidje na isti problem.
Naime, problem je bio u enviroment varijabli CLASSPATH ...
Bila je podesena na H:\DeveloperSuite\jlib\bigraphbean.jar;H:\DeveloperSuite\jlib\LW_PfjBean.jar;H:\DeveloperSuite\jlib\bigraphbean-nls.zip;C:\JDeveloper\jdk\lib\tools.jar;C:\JDeveloper\jdk\jre\lib\rt.jar;C:\JDeveloper\jdev\mywork\Java_Kurs\Java_Kurs_2\classes, a to je zasnovano na JDK 1.4.2, pa je ant citao putanje iz CLASSPATH i koristio pogresne (starije) klase.

Rjesenje je jednostavno.
Code:
C:\Tomcat-5-5-4\webapps\StockWatcher>set classpath=C:\Programme\Java\jdk-1_5_0_01\jre\lib\rt.jar;C:\Programme\Java\jdk-1_5_0_01\lib\tools.jar

Sve radi bez problema.
Code:
C:\Tomcat-5-5-4\webapps\StockWatcher>ant -f build.xml
Buildfile: build.xml

prepare:

compile:

BUILD SUCCESSFUL
Total time: 1 second
C:\Tomcat-5-5-4\webapps\StockWatcher>