Bonjour,
jessaie de compiler du code Java sur unix avec un build.sh et un build.xml, mais l'erreur suivante s'affiche :

java.lang.ClassNotFoundException: org.apache.tools.ant.Main
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:244)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:67)



ci-dessous le build.xml:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
 
<project name="custcare_cu" default="all">
	<target name="init">
		<echo message="***** INIT *****"/>
		<tstamp/>
		<property name="comp.tomcat"   	value="${CATALINA_BASE}" />
		<property name="comp.webapp"    value="${comp.tomcat}/webapps/${ant.project.name}" />
		<property name="comp.javaLib" 	value="${comp.webapp}/WEB-INF/lib"/>
		<property name="comp.javaSrc"   value="${comp.webapp}/WEB-INF/src" />
		<property name="comp.javaClass" value="${comp.webapp}/WEB-INF/classes" />
		<property name="comp.copyClass" value="${comp.webapp}/WEB-INF/classes-tmp" />
        	<echo message="$CATALINA_BASE      = ${CATALINA_BASE}"/>
        	<echo message="$JAVA_HOME      = ${JAVA_HOME}"/>
        	<echo message="JAVA version    = ${ant.java.version}"/>
        	<echo message="comp.tomcat     = ${comp.tomcat}"/>
        	<echo message="comp.webapp     = ${comp.webapp}"/>
		<echo message="comp.javaLib    = ${comp.javaLib}"/>
		<echo message="comp.javaSrc    = ${comp.javaSrc}"/>
		<echo message="comp.javaClass  = ${comp.javaClass}"/>
		<echo message="comp.copyClass  = ${comp.copyClass}"/>
		<delete dir="${comp.copyClass}"/>
		<mkdir dir="${comp.copyClass}"/>
		<delete file="${comp.javaLib}/cx_nonkernel.jar"/>
		<!--<delete file="${comp.javaLib}/extPayment.jar"/>-->
	</target>
	<target name="compile" depends="init">
		<echo message="***** COMPILE *****"/>
		<javac srcdir="${comp.javaSrc}"
			destdir="${comp.copyClass}"
			source="1.3"
			target="1.2"
			verbose="false"
			executable="${JAVA_HOME}/bin/javac">
			<classpath>
	      		<fileset dir="${comp.tomcat}">
		        	<include name="common/lib/*.jar"/>
		      	</fileset>
        		<fileset dir="${comp.javaLib}">
		       		<include name="*.jar"/>
		      	</fileset>   		
		    </classpath>	
		</javac>
	</target>
	<target name="copy" depends="compile">
		<echo message="***** COPY *****"/>
		<echo message="comp.copyroot = ${comp.copyClass}"/>
		<copy todir="${comp.copyClass}">
				<fileset dir="${comp.javaClass}">
					<include name="**/*SU.xml"/>
					<exclude name="**/Registry"/>
					<include name="**/*Config.xml"/>
					<exclude name="**/additionalinfo/**/*.xml"/>
					<exclude name="**/*.java"/>
				</fileset>
		</copy>
	</target>
	<target name="archive" depends="compile">
		<echo message="***** JAR *****"/>
		<jar destfile="${comp.javaLib}/cx_nonkernel.jar" >
			<fileset dir="${comp.copyClass}">
				<!--<exclude name="com/lhs/ccb/nonkernel/paymentAuthentication/*"/>-->
				<include name="com/**/*.class"/>
				<include name="**/solutiongui/**/*SU.xml"/>
				<include name="**/model/resource/*Config.xml"/>
				<!--<exclude name="com/mvne/webservices/**"/>-->
			</fileset>
		</jar>
	<!--	<jar destfile="${comp.javaLib}/extPayment.jar" >
			<fileset dir="${comp.copyClass}">
				<include name="com/lhs/ccb/nonkernel/paymentAuthentication/*"/>
			</fileset>
		</jar>
	-->
 
	</target>
	<target name="clean" depends="archive">
		<echo message="***** CLEAN *****"/>
		<delete dir="${comp.copyClass}"/>
	</target>
	<target name="all" depends="init,compile,copy,archive,clean"/>
</project>
et le build.sh:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
#!/bin/ksh
 
echo "Compilation du code Source CustCare"
java -jar $BSCS_ROOT/TT/common/ant-launcher.jar -d -v -q -buildfile ./build-CustCare.xml -DCATALINA_BASE=$CATALINA_BASE -DJAVA_HOME=$JAVA_HOME
echo "Compilation CustCare Terminee"
je veux savoir si l'erreur est liée à la version de Java car sur unix OU à l'accès à certains répertoires...


merciii