Ant et eclipse

Ant et eclipse - Java - Programmation

Marsh Posté le 10-02-2004 à 14:26:52    

Je veux executer ant sous eclipse mais cela ne marche pas
mais par contre cela marche sous l'invite de commande
 
il me met :
 
Buildfile: C:\Documents and Settings\matthieu\Mes
documents\Java\J2EE\workspace\EjbProject\build.xml
 
Trying to override old definition of task ejbjar
 
init:
 
compile:
 
[javac] Compiling 22 source files to C:\Documents and Settings\matthieu\Mes
documents\Java\J2EE\workspace\EjbProject\classes
 
[javac] BUILD FAILED: file:C:/Documents and Settings/matthieu/Mes
documents/Java/J2EE/workspace/EjbProject/build.xml:107: Unable to find a
javac compiler;
 
com.sun.tools.javac.Main is not on the classpath.
 
Perhaps JAVA_HOME does not point to the JDK
 
Total time: 407 milliseconds
 
Apparement ca vien du optimize ou de mon classpath mais je n'arrive pas a
trouver comment faire
 
 
 
<target name="compile"
 
description="Compile the Course Broker"
 
depends="init" >
 
<javac srcdir="${src.dir}"
 
destdir="${classes.dir}"
 
debug="${opt.javac.debug}"
 
optimize="${opt.javac.optimize}">
 
<classpath refid="base.classpath" />
 
</javac>
 
</target>
 
 
 
Merci d'avance
 

Reply

Marsh Posté le 10-02-2004 à 14:26:52   

Reply

Marsh Posté le 10-02-2004 à 14:28:28    

Citation :


Perhaps JAVA_HOME does not point to the JDK


 
 
[:jake]


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 10-02-2004 à 14:31:25    

J'ai verifie java_home pointe bien sur mon jdk

Reply

Marsh Posté le 10-02-2004 à 14:33:03    

j'ai eu le probleme avec un ant autre que celui dans les plugin de eclipse, et les version 3M05 de eclipse. tu as quoi ?


---------------
IVG en france
Reply

Marsh Posté le 10-02-2004 à 14:34:42    

J'ai eclipse 2.1.2
et plugin ant 1.5.3

Reply

Marsh Posté le 10-02-2004 à 14:38:25    

Ant est installé ou? -> $ANT_HOME
Java est ou? -> $JAVA_HOME
tout ca est bien redefini dans les variables d'environnement de eclipse :??:
(mon probleme a disparu sitot que je suis passé à la 3M06 alors je sais pas en fait)


---------------
IVG en france
Reply

Marsh Posté le 10-02-2004 à 14:41:53    

Java_home : c:/j2sdk1.4.1_02
ant_home : c:/jonas-3.3/ant
dans eclipse ant_home est vide et java_home on le trouve ou dans eclipse?

Reply

Marsh Posté le 10-02-2004 à 14:43:46    

Moi, j'utilise le javac d'Eclipse en utilisant la déclaration suivante en début de mon script Ant
 
<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter" />

Reply

Marsh Posté le 10-02-2004 à 14:46:27    

Script ant??
Excuse moi mais je debute
 
je n'ai pas creer de script ant ou alors il a ete cree par defaut car j'utilise eclipse donc je ne sais pas ou mettre ta ligne de commande

Reply

Marsh Posté le 10-02-2004 à 14:48:38    

rivierem a écrit :

Java_home : c:/j2sdk1.4.1_02
ant_home : c:/jonas-3.3/ant
dans eclipse ant_home est vide et java_home on le trouve ou dans eclipse?


 
tu dois definir tes variables dans eclipse (sous menu Java/variable d'environnement je crois)
ca vient peut etre de là


---------------
IVG en france
Reply

Marsh Posté le 10-02-2004 à 14:48:38   

Reply

Marsh Posté le 10-02-2004 à 14:49:59    

Ton script ant se situe là d'après ton 1er post:  
 
C:\Documents and Settings\matthieu\Mes  
documents\Java\J2EE\workspace\EjbProject\build.xml  
 
il suffit de l'éditer et après la balise <projet> de mettre la déclaration que j'ai donné + haut

Reply

Marsh Posté le 10-02-2004 à 14:50:13    

effectivement ca bien la et JRE_SRC est vide
JRE_SRCROOT est vide aussi???
Mais je ne peux pas les modifier!!!

Reply

Marsh Posté le 10-02-2004 à 14:51:49    

tu dois dire à eclipse quel JRE est installé (java/JRE ou qqchose comme ca) apres il te rempli le reste :jap:


---------------
IVG en france
Reply

Marsh Posté le 10-02-2004 à 14:52:19    

effectivement avec ta ligne ca a l'air de marcher mais comme cela marcher parfois je vais attendre
Par contre je veux deployer dans jonas et il  ne trouve mon fichier jar!!!
Je galere grave

Reply

Marsh Posté le 10-02-2004 à 14:53:28    

je lui est defini mon jdk mais JRE_SRCROOT est toujours vide

Reply

Marsh Posté le 10-02-2004 à 14:54:24    

ça semble marcher ou ça marche ? :D
 
quel fichier jar ?

Reply

Marsh Posté le 10-02-2004 à 14:54:27    

le plus propre est effectivement de redeclarer le path vers le JRE dans le script Ant :jap: (moi je suis un goret je l'ai mis en variable d'environnement [:petrus75])


---------------
IVG en france
Reply

Marsh Posté le 10-02-2004 à 14:56:27    

machinbidule : ca marche
 
le fichier jar de mon appli voila l'erreur
 
2004-02-10 14:56:08,390 : EarServiceImpl.deployEar : Error while trying to resolve the classpath of the ejbjars and wars of the ear : 'file:/C:/JOnAS-3.3/apps/course.ear' : Error while reading manifest file from the file course.jar : Le fichier spécifié est introuvable
 

Reply

Marsh Posté le 10-02-2004 à 14:57:01    

En l'occurrence, la déclaration donnée + haut indique que le compilateur appelé est celui d'Eclipse, ce qui évite d'avoir à déclarer un chemin absolu

Reply

Marsh Posté le 10-02-2004 à 14:58:11    

il a été généré comment ton ear ? avec la tâche ear d'Ant ? est-ce-qu'il contient un fichier MANIFEST ?

Reply

Marsh Posté le 10-02-2004 à 14:59:56    

oui il contient un fichier manifest
je pense que oui il a ete cree avec la tache d'ant

Reply

Marsh Posté le 10-02-2004 à 15:01:11    

rivierem a écrit :

oui il contient un fichier manifest
je pense que oui il a ete cree avec la tache d'ant
 


comment a été créé le fichier build.xml  :??:


---------------
IVG en france
Reply

Marsh Posté le 10-02-2004 à 15:03:35    

arf... je vais pas pouvoir beaucoup t'aider, j'ai aucune expérience des ear :/ c'est peut-être un problème de classpath, de génération de l'ear... je vois pas trop :/

Reply

Marsh Posté le 10-02-2004 à 15:03:59    

en formation un prof qui nous l'a fait copie sans nous expliquer comment ca marchais c pour cela que je galere car on etait qou linux et mois je sui sous windows
j'ai donc repris les chemins mais je pense qu'il doit y avoir encore des problemes mais je suis largue
 
voila mon build.xml
 
<?xml version="1.0"?>
 
<!--
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 - JOnAS: Java(TM) Open Application Server
 - Copyright (C) 1999 Bull S.A.
 - Contact: jonas-team@objectweb.org
 -  
 - This library is free software; you can redistribute it and/or
 - modify it under the terms of the GNU Lesser General Public
 - License as published by the Free Software Foundation; either
 - version 2.1 of the License, or any later version.
 -  
 - This library is distributed in the hope that it will be useful,
 - but WITHOUT ANY WARRANTY; without even the implied warranty of
 - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 - Lesser General Public License for more details.
 -  
 - You should have received a copy of the GNU Lesser General Public
 - License along with this library; if not, write to the Free Software
 - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
 - USA
 -
 - Initial developer(s): Helene Joanin
 - Contributor(s): Philippe Durieux
 -
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 - $Id: build.xml,v 1.8 2003/05/27 08:36:43 coqp Exp $
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 -->
 
<!--
 -  build.xml file for JOnAS course example (for Ant Version 1.5)
 - environment variables used :
 -  JONAS_ROOT
 -->
 
<project name="Course Broker"  
  default="install"  
  basedir=".">
 
  <!-- build.properties hold the properties that can be customized -->
  <property file="build.properties" />
 
  <!-- some properties are build from environment variables -->
  <property environment="myenv"/>
  <property name="jonas.root" value="${myenv.JONAS_ROOT}" />
   
  <property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter" />
   
  <!-- Set the uncustomizable properties -->
  <property name="src.dir" value="src" />
  <property name="etc.dir" value="etc" />
  <property name="xml.dir" value="${etc.dir}/xml" />
  <property name="resources.dir" value="${etc.dir}/resources" />
  <property name="web.resources.dir" value="${resources.dir}/web" />
  <property name="classes.dir" value="classes" />
  <property name="dist.dir" value="output" />
  <property name="dist.ejbjars.dir" value="${dist.dir}/ejbjars" />
  <property name="dist.webapps.dir" value="${dist.dir}/webapps" />
  <property name="dist.apps.dir" value="${dist.dir}/apps" />
  <property name="lib.dir" value="${jonas.root}/lib" />
 <!-- ejbjar task  -->
 <taskdef name="ejbjar"
    classname="org.objectweb.jonas.ant.EjbJar"
    classpath="${jonas.root}/lib/common/ow_jonas_ant.jar" />
 
  <!-- The classpath to be used to compile examples -->
  <path id="base.classpath">
    <pathelement location="${classes.dir}" />
    <fileset dir="${lib.dir}">
      <include name="jonas.jar"/>
      <include name="web*.jar"/>
    </fileset>
  </path>
 
  <target name="mydtd"
   description="rebuild ./build.dtd for DOCTYPE">
    <antstructure output="build.dtd"/>
  </target>
 
  <target name="init">
    <!-- directories building -->
    <mkdir dir="${classes.dir}" />
    <mkdir dir="${dist.dir}" />
    <mkdir dir="${dist.apps.dir}" />
    <mkdir dir="${dist.ejbjars.dir}" />
    <mkdir dir="${dist.webapps.dir}" />
    <condition property="jonas.base" value="${myenv.JONAS_BASE}">
        <available file="${myenv.JONAS_BASE}"/>
    </condition>
    <condition property="jonas.base" value="${jonas.root}">
        <available file="${jonas.root}"/>
    </condition>
  </target>
 
  <target name="clean"  
   description="Removes all the generated files or directories">
    <delete dir="${classes.dir}" />
    <delete dir="${dist.dir}" />
  </target>
 
  <target name="compile"  
   description="Compile the Course Broker"
   depends="init" >
    <javac srcdir="${src.dir}"
    destdir="${classes.dir}"
    debug="${opt.javac.debug}"
    optimize="${opt.javac.optimize}">
      <classpath refid="base.classpath" />
    </javac>
  </target>
 
  <!-- Deploying ejbjars via ejbjar task  -->
  <target name="jonasejbjar"  
   description="Build and deploy the ejb-jar file"
   depends="compile" >
    <ejbjar basejarname="course"
     srcdir="${classes.dir}"
     descriptordir="${xml.dir}"  
     dependency="full" >
      <include name="/ejb-jar.xml"/>
      <dtd publicId="-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN"
    location="${jonas.root}/xml/ejb-jar_2_0.dtd" />
     <!-- <support dir="${classes.dir}">
 <include name="**/AddressDO.class"/>
      </support>-->
      <jonas destdir="${dist.ejbjars.dir}"  
      jonasroot="${jonas.root}"  
      mappernames="${mapper.names}"
             protocols="${protocols.names}"
      keepgenerated="true" />
    </ejbjar>
  </target>
 
 
  <target name="war"  
   description="Build the war file"
   depends="jonasejbjar" >
    <war warfile="${dist.webapps.dir}/course.war"
  webxml="${xml.dir}/web.xml">
      <zipfileset dir="${web.resources.dir}" prefix="" />  
      <classes dir="${classes.dir}">
 <include name="**/**/**/servlets/*.class"/>
      </classes>
    </war>
  </target>
 
  <target name="ear"  
   description="Build the war file"
   depends="war" >
    <ear earfile="${dist.apps.dir}/course.ear"
  appxml="${xml.dir}/application.xml">
      <fileset dir="${dist.ejbjars.dir}" includes="course.jar"/>
      <fileset dir="${dist.webapps.dir}" includes="course.war"/>
    </ear>
  </target>
 
  <target name="install"  
   description="Build and install the Course Broker"
   depends="ear" >
    <!-- Copy ear files in JONAS_BASE -->
    <copy todir="${jonas.base}/apps">
      <fileset dir="${dist.apps.dir}"
        includes="course.ear" />
    </copy>
    <!-- Extract the ejb-jar in classes -->
    <unjar dest="${classes.dir}">
     <fileset dir="${dist.ejbjars.dir}">
      <include name="*.jar" />
     </fileset>
    </unjar>
  </target>
 
</project>
 
 

Reply

Marsh Posté le 10-02-2004 à 15:06:57    

ton erreur d'ear survient à l'exécution du script ? si oui, mets toute la trace d'exécution qu'on puisse s'y repérer

Reply

Marsh Posté le 10-02-2004 à 15:07:55    

non elle vient lorsque je fait jonas admin -a course.ear
le script marche maintenant

Reply

Marsh Posté le 10-02-2004 à 15:08:27    

Voila la trace quand meme
 
 

Code :
  1. Buildfile: C:\Eclipse\eclipse\workspace\EjbProject\build.xml
  2. Trying to override old definition of task ejbjar
  3. clean:
  4.       [delete] Deleting directory C:\Eclipse\eclipse\workspace\EjbProject\classes
  5.       [delete] Deleting directory C:\Eclipse\eclipse\workspace\EjbProject\output
  6. init:
  7.        [mkdir] Created dir: C:\Eclipse\eclipse\workspace\EjbProject\classes
  8.        [mkdir] Created dir: C:\Eclipse\eclipse\workspace\EjbProject\output
  9.        [mkdir] Created dir: C:\Eclipse\eclipse\workspace\EjbProject\output\apps
  10.        [mkdir] Created dir: C:\Eclipse\eclipse\workspace\EjbProject\output\ejbjars
  11.        [mkdir] Created dir: C:\Eclipse\eclipse\workspace\EjbProject\output\webapps
  12. compile:
  13.        [javac] Compiling 22 source files to C:\Eclipse\eclipse\workspace\EjbProject\classes
  14.        [javac] 1098 lignes compilées en 531 ms (2067.7 lignes/s)
  15.        [javac] 22 fichiers .class générés
  16. jonasejbjar:
  17.       [ejbjar] Unable to load dependency analyzer: org.apache.tools.ant.util.depend.bcel.FullAnalyzer
  18. war:
  19.          [war] Building war: C:\Eclipse\eclipse\workspace\EjbProject\output\webapps\course.war
  20. ear:
  21.          [ear] Building ear: C:\Eclipse\eclipse\workspace\EjbProject\output\apps\course.ear
  22. install:
  23.         [copy] Copying 1 file to C:\JOnAS-3.3\apps
  24. BUILD SUCCESSFUL
  25. Total time: 1 second

Reply

Marsh Posté le 10-02-2004 à 15:08:43    

arf, je botte en touche alors :/

Reply

Marsh Posté le 10-02-2004 à 15:10:52    

Merci quand meme  
tu m'as deja enleve une epine du pied car mon script ant marche a tous les coups maintenant
 
je vais voir pour mon deploiement sous jonas  :(

Reply

Marsh Posté le 10-02-2004 à 15:11:44    

je crois qu'il faudrait mieux savoir ce que tu fais avant tout :/


---------------
IVG en france
Reply

Marsh Posté le 10-02-2004 à 15:12:44    

ja sais ce que je veux faire mais comment le faire

Reply

Marsh Posté le 10-02-2004 à 15:14:14    

rivierem a écrit :

ja sais ce que je veux faire mais comment le faire


 
je connais pas Jonas (j'ai utilisé JBoss) mais il peut faire le deploiement à chaud ?


---------------
IVG en france
Reply

Marsh Posté le 10-02-2004 à 15:16:17    

oui du moins on le faisait en formation
il suffit dans l'invite de commande de taper jonas admin -a nom-du-ear.ear mais il me met l'erreur qu'il y a ci-dessus

Reply

Marsh Posté le 10-02-2004 à 15:17:41    

est-ce-que tes fichiers sont bien dans les bons répertoires ? est-ce-que le ear ne fait pas référence au war ? si oui, est-ce-que cette référence est correcte (chemin absolu ? relatif ?)

Reply

Marsh Posté le 10-02-2004 à 15:18:46    

mon ear fait reference au war et au jar les chemins sont bon mais le fichier jar n'est pas cree???
Je ne sais donc pas comment faire

Reply

Marsh Posté le 10-02-2004 à 15:22:42    

d'après ton script Ant, le fichier course.jar est inclus lors de la génération dans le fichier ear. vérifie qu'il s'y trouve bien. Si ça n'est pas le cas, est-ce-que ton fichier jar se trouve dans le répertoire output/ejbjars ?

Reply

Marsh Posté le 10-02-2004 à 15:24:30    

non justement il ne s'y trouve pas et je ne sais pas pourquoi

Reply

Marsh Posté le 10-02-2004 à 15:25:43    

il va falloir inclure une <target> dans ton script avec la génération du jar. je peux essayer de t'aider mais je vais prendre le café, là :D je reviens

Reply

Marsh Posté le 10-02-2004 à 15:26:36    

c'est bizarre que le jar ne soit pas crée comme un tache Ant comme le war ou l'ear
 
edit: tu dois creer une task ant qui recupere les .class et les met sous forme de jar


Message édité par uriel le 10-02-2004 à 15:27:16

---------------
IVG en france
Reply

Marsh Posté le 10-02-2004 à 15:27:03    

ok je vais aller prendre le mien aussi :D

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed