2014-09-08 3 views
0

J'ai un projet appelé LTSWebEJB dans eclipse. Ce projet fait référence à un autre projet appelé LTSCommonUtil. Je l'ai écrit fichier de construction pour LTSWebEJB que,Inclure d'autres fichiers java de projet dans build.xml

<?xml version="1.0"?> 
<project name="ejbproj" default="deploy"> 

    <property name="build.dir" value="build" /> 
    <property name="jarName" value="LTSWebEJB.jar" /> 
    <property name="JBOSS" value="C:\Lts8083\jboss-as-web-7.0.0.Final" /> 
    <property name="JBOSSLIB" value="${JBOSS}\modules\javax" /> 

    <path id="project.class.path"> 
     <fileset dir="../LTSWebEAR/ear/lib" includes="*.jar"/> 
     <fileset dir="${JBOSSLIB}/persistence/api/main" includes="*.jar"/> 
    <fileset dir="${JBOSSLIB}/ejb/api/main" includes="*.jar"/> 
    <fileset dir="${JBOSSLIB}/servlet/api/main" includes="*.jar"/> 
    <fileset dir="../LTSCommonUtil/src" includes="src/com/eiw/server/"/> 
    </path> 

    <target name="clean" description="Cleans this project"> 
    <delete dir="${build.dir}" failonerror="false" /> 
    <delete dir="../LTSWebEAR/ear/${jarName}" failonerror="false" /> 
    </target> 

    <target name="compile" depends="clean" description="Compile java source to bytecode"> 
    <mkdir dir="${build.dir}"/> 
    <javac srcdir="src" includes="**/*.java" encoding="utf-8" 
     destdir="build" excludes="*.java" 
     source="1.5" target="1.5" nowarn="true" 
     debug="true" debuglevel="lines,vars,source"> 
     <classpath refid="project.class.path"/> 
    </javac> 
    </target> 

    <target name="deploy" depends="compile" description="Deploy this jar to Ear location"> 
     <copy todir="${build.dir}" > <fileset dir="src" excludes="*.java"/> </copy> 
     <jar destfile="../LTSWebEAR/ear/${jarName}" > 
      <fileset 
       dir="${build.dir}" 
       excludes="**/Test.class" /> 
     </jar> 
    </target> 

</project> 

Mais LTSWebEJB échoue compilation car il montre ne peut pas trouver le symbole. Il est impossible de prendre des classes à partir du projet LTSCommonUtil. Mais je l'avais inclus dans la ligne "". S'il vous plaît aider.

Répondre

0

Je suppose, mais je pense que le problème est de savoir comment vous avez déclaré votre chemin d'accès aux fichiers de classe de l'autre projet. Besoin de spécifier le répertoire racine correspondant au paquet de la classe.

Voici ma tentative aveugle pour résoudre le problème, mais une deuxième question doit être posée .... Pourquoi le répertoire "src"? Avez-vous compilé l'autre projet dans des fichiers ".class"?

<path id="project.class.path"> 

    <fileset dir="../LTSWebEAR/ear/lib" includes="*.jar"/> 
    <fileset dir="${JBOSSLIB}/persistence/api/main" includes="*.jar"/> 
    <fileset dir="${JBOSSLIB}/ejb/api/main" includes="*.jar"/> 
    <fileset dir="${JBOSSLIB}/servlet/api/main" includes="*.jar"/> 

    <pathelement location="../LTSCommonUtil/src"/> 

</path> 
Questions connexes