IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ANT Java Discussion :

Problème avec un jar et un ant


Sujet :

ANT Java

  1. #1
    Membre actif Avatar de ploxien
    Inscrit en
    Février 2006
    Messages
    467
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Février 2006
    Messages : 467
    Points : 221
    Points
    221
    Par défaut Problème avec un jar et un ant
    Hello,

    J'ai une classe (AntCallTest) dans un jar. Elle contient un main, qui fait entre autre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ... Class.forName(args[i]).newInstance();
    Donc qui créé une nouvelle instance d'après une string passée en paramètre.

    Mon arborescence:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    - Rep racine de l'applic
      - test
        - AntTest.java
        - DatabaseConfig.java
      - monJar.jar
        - configuration
          - AntCallTet.class
    Lorsque j'appele cette fonction depuis une classe de test, pas de souci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String[] tab = {"test.DatabaseConfig"};
    AntCallTest.main(tab);
    Mais si je le fais depuis un fichier ant, ca ne marche plus!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     <target name="callJava" depends="compile">
      <java classname="configuration.AntCallTest">
        <classpath>
          <pathelement location="lib/configuration-manager-1.1.jar"/>
        </classpath>
        <arg value="test.DatabaseConfig"/>
      </java>
    </target>
    Ca me met une erreur de ClassNotFoundException...

    Une idée pourquoi? Je ne vois pas...

    Merci d'avance!

    A+

    Erreur:
    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
    [java] java.lang.ClassNotFoundException: DatabaseConfig
         [java] at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1166)
         [java] at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1107)
         [java] at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:983)
         [java] at java.lang.ClassLoader.loadClass(Unknown Source)
         [java] at java.lang.ClassLoader.loadClassInternal(Unknown Source)
         [java] at java.lang.Class.forName0(Native Method)
         [java] at java.lang.Class.forName(Unknown Source)
         [java] at configuration.AntCallTest.main(AntCallTest.java:12)
         [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         [java] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         [java] at java.lang.reflect.Method.invoke(Unknown Source)
         [java] at org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:202)
         [java] at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:134)
         [java] at org.apache.tools.ant.taskdefs.Java.run(Java.java:710)
         [java] at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:178)
         [java] at org.apache.tools.ant.taskdefs.Java.execute(Java.java:84)
         [java] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
         [java] at org.apache.tools.ant.Task.perform(Task.java:364)
         [java] at org.apache.tools.ant.Target.execute(Target.java:341)
         [java] at org.apache.tools.ant.Target.performTasks(Target.java:369)
         [java] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
         [java] at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
         [java] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
         [java] at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
         [java] at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
         [java] at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
         [java] at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)
         [java] configuration.ConfigException: Invalid arguments!: DatabaseConfig
         [java] at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:180)
         [java] at org.apache.tools.ant.taskdefs.Java.run(Java.java:710)
         [java] at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:178)
         [java] at org.apache.tools.ant.taskdefs.Java.execute(Java.java:84)
         [java] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
         [java] at org.apache.tools.ant.Task.perform(Task.java:364)
         [java] at org.apache.tools.ant.Target.execute(Target.java:341)
         [java] at org.apache.tools.ant.Target.performTasks(Target.java:369)
         [java] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
         [java] at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
         [java] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
         [java] at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
         [java] at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
         [java] at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
         [java] at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)
         [java] Caused by: configuration.ConfigException: Invalid arguments!: DatabaseConfig
         [java] at configuration.AntCallTest.main(AntCallTest.java:16)
         [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         [java] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         [java] at java.lang.reflect.Method.invoke(Unknown Source)
         [java] at org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:202)
         [java] at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:134)
         [java] ... 14 more
         [java] --- Nested Exception ---
         [java] configuration.ConfigException: Invalid arguments!: DatabaseConfig
         [java] at configuration.AntCallTest.main(AntCallTest.java:16)
         [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         [java] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         [java] at java.lang.reflect.Method.invoke(Unknown Source)
         [java] at org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:202)
         [java] at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:134)
         [java] at org.apache.tools.ant.taskdefs.Java.run(Java.java:710)
         [java] at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:178)
         [java] at org.apache.tools.ant.taskdefs.Java.execute(Java.java:84)
         [java] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
         [java] at org.apache.tools.ant.Task.perform(Task.java:364)
         [java] at org.apache.tools.ant.Target.execute(Target.java:341)
         [java] at org.apache.tools.ant.Target.performTasks(Target.java:369)
         [java] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
         [java] at org.apache.tools.ant.Project.executeTarget(Project.java:1185)
         [java] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
         [java] at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
         [java] at org.apache.tools.ant.Project.executeTargets(Project.java:1068)
         [java] at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
         [java] at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)

  2. #2
    Membre actif Avatar de ploxien
    Inscrit en
    Février 2006
    Messages
    467
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Février 2006
    Messages : 467
    Points : 221
    Points
    221
    Par défaut
    Eh ben voila!

    La task correcte:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <!-- Launch java class -->
        <target name="callJava" depends="compile">
            <java classname="configuration.AntCallTest">
                <arg value="test.DatabaseConfig"/>
                <classpath>
                    <pathelement location="lib/configuration-manager-1.1.jar"/>
                    <pathelement path="${classes}"/>
                </classpath>
                
            </java>
        </target>

  3. #3
    Invité
    Invité(e)
    Par défaut MERCI !
    C'est exactement la réponse que je cherchais..
    a savoir comment lancer une méthode java depuis Ant

    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec Fat Jar
    Par spax dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 22/08/2008, 14h09
  2. Problème avec un jar
    Par skytofer31 dans le forum NetBeans
    Réponses: 23
    Dernier message: 13/12/2006, 11h30
  3. Problème avec un jar executable
    Par haludo dans le forum NetBeans
    Réponses: 5
    Dernier message: 23/10/2006, 12h01
  4. Problème avec un jar executable
    Par haludo dans le forum NetBeans
    Réponses: 5
    Dernier message: 12/10/2006, 19h51
  5. Réponses: 6
    Dernier message: 17/04/2005, 10h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo