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

avec Java Discussion :

Erreur de compilation


Sujet :

avec Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Erreur de compilation
    Salut;
    Je suis entrain de compiler une fichier .java
    mais je n'arrive pas a cause de cette erreur
    the method ajs$postclinit() is undefined for this class
    voici le code source:
    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
    /*    */ package com.vidal.merlin.dateofkill;
    /*    */ 
    /*    */ import com.vidal.merlin.utils.dateofkill.DateOfKillException;
    /*    */ import com.vidal.merlin.utils.dateofkill.DateOfKillStatus;
    /*    */ import com.vidal.merlin.utils.productline.licencing.LicenceManager;
    /*    */ import com.vidal.merlin.utils.productline.licencing.LicenceManagerFactory;
    /*    */ import java.util.ResourceBundle;
    /*    */ import org.apache.commons.logging.Log;
    /*    */ import org.apache.commons.logging.LogFactory;
    /*    */ import org.aspectj.lang.NoAspectBoundException;
    /*    */ import org.aspectj.lang.ProceedingJoinPoint;
    /*    */ import org.aspectj.lang.annotation.Around;
    /*    */ import org.aspectj.lang.annotation.Aspect;
    /*    */ import org.springframework.stereotype.Component;
    /*    */ 
    /*    */ @Aspect
    /*    */ @Component("businessDateOfKillManager")
    /*    */ public class BusinessDateOfKillManager
    /*    */ {
    /* 23 */   private static final Log LOG = LogFactory.getLog(BusinessDateOfKillManager.class);
    /* 24 */   private static final ResourceBundle BUNDLE = ResourceBundle.getBundle("com.vidal.merlin.dateofkill.DateOfKillManager");
    /*    */ 
    /*    */   static
    /*    */   {
    /*    */     try
    /*    */     {
    /* 22 */       ajc$postClinit(); } catch (Throwable localThrowable) { ajc$initFailureCause = localThrowable;
    /*    */     }
    /*    */   }
    /*    */ 
    /*    */   @Around(value="bo() && target(callee)", argNames="pjp, callee")
    /*    */   public Object around(ProceedingJoinPoint pjp, Object callee)
    /*    */     throws Throwable
    /*    */   {
    /* 32 */     ajc$inlineAccessFieldGet$com_vidal_merlin_dateofkill_BusinessDateOfKillManager$com_vidal_merlin_dateofkill_BusinessDateOfKillManager$LOG().debug("Starting analysis of dateOfKill policy");
    /* 33 */     DateOfKillStatus status = LicenceManagerFactory.getInstance().checkDateOfKillStatus();
    /* 34 */     if (status == DateOfKillStatus.KO) {
    /* 35 */       ajc$inlineAccessFieldGet$com_vidal_merlin_dateofkill_BusinessDateOfKillManager$com_vidal_merlin_dateofkill_BusinessDateOfKillManager$LOG().info("Date of kill passed in Bo");
    /* 36 */       throw new DateOfKillException(ajc$inlineAccessFieldGet$com_vidal_merlin_dateofkill_BusinessDateOfKillManager$com_vidal_merlin_dateofkill_BusinessDateOfKillManager$BUNDLE().getString("dateOfKill.exception.msg"));
    /*    */     }
    /* 38 */     ajc$inlineAccessFieldGet$com_vidal_merlin_dateofkill_BusinessDateOfKillManager$com_vidal_merlin_dateofkill_BusinessDateOfKillManager$LOG().debug("Date of kill OK...");
    /* 39 */     return pjp.proceed();
    /*    */   }
    /*    */ 
    /*    */   public static BusinessDateOfKillManager aspectOf()
    /*    */   {
    /*  1 */     if (ajc$perSingletonInstance == null) throw new NoAspectBoundException("com.vidal.merlin.dateofkill.BusinessDateOfKillManager", ajc$initFailureCause); return ajc$perSingletonInstance; } 
    /*  1 */   public static boolean hasAspect() { return ajc$perSingletonInstance != null;
    /*    */   }
    /*    */ }
     
    /* Location:           C:\Documents and Settings\DELL\My Documents\Downloads\merlin-business.jar
     * Qualified Name:     com.vidal.merlin.dateofkill.BusinessDateOfKillManager
     * JD-Core Version:    0.6.0
     */
    et voici le command que j'ai utilisé pour compiler:
    D:\aspectj1.6\bin\ajc.bat -classpath C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\VIDALD~1\merlin-utils.jar;D:\aspectj1.6\lib\aspectjrt.jar;C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\VIDALD~1\commons-logging.jar;C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\VIDALD~1\spring-aop.jar;C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\VIDALD~1\spring-asm.jar;C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\VIDALD~1\spring-beans.jar;C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\VIDALD~1\spring-context.jar;C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\VIDALD~1\spring-core.jar;C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\VIDALD~1\spring-expression.jar;C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\VIDALD~1\spring-jdbc.jar;C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\VIDALD~1\spring-orm.jar;C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\VIDALD~1\spring-tx.jar;C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\VIDALD~1\spring-web.jar;D:\aspectj1.6\lib\aspectjtools.jar;D:\aspectj1.6\lib\aspectjweaver.jar;D:\aspectj1.6\lib\org.aspectj.matcher.jar -d C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\MERLIN~1.SRC\com\vidal\merlin\DATEOF~1\ C:\DOCUME~1\DELL\MYDOCU~1\DOWNLO~1\MERLIN~1.SRC\com\vidal\merlin\DATEOF~1\BusinessDateOfKillManager.java



    SVP aidez-moi

  2. #2
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Premièrement, je ne vois pas vraiment ce que tu veux faire car :
    - Ta classe dépend de d'autres classes
    - Ta classe contient des noms de fonctions étrange avec des $ (ça sent la décompilation ça non ?)

    Deuxièmement, comme ton erreur te l'indique ta méthode n'existe pas dans ta classe.
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Salut Robin
    Citation Envoyé par Robin56 Voir le message
    Premièrement, je ne vois pas vraiment ce que tu veux faire car :
    - Ta classe dépend de d'autres classes
    - Ta classe contient des noms de fonctions étrange avec des $ (ça sent la décompilation ça non ?)

    Deuxièmement, comme ton erreur te l'indique ta méthode n'existe pas dans ta classe.
    1:oui ma classe depend d'autre classe que j'ai integre dans le commande -classpath
    2:oui ma classe est aussi decompile (tu es fort mon ami)

    et
    3:la message d'erreur indique que la fonction ajc$postclinit is not defined
    l'erreur se trouve ici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     try
    /*    */     {
    /* 22 */       ajc$postClinit(); } catch (Throwable localThrowable) { ajc$initFailureCause = localThrowable;
    /*    */     }
    /*    */   }
    est-ce que je dois utiliser -d parametre

  4. #4
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Je te conseille déjà de créer un projet Java et d'y intégrer ton code, ça sera déjà plus pratique.

    Citation Envoyé par ProfessionalGold Voir le message
    1:oui ma classe depend d'autre classe que j'ai integre dans le commande -classpath
    Tu as intégré les librairies externes qui sont nécessaires, moi je te parle de d'autre classe Java qui ont du être créé dans ce projet.

    Citation Envoyé par ProfessionalGold Voir le message
    3:la message d'erreur indique que la fonction ajc$postclinit is not defined
    l'erreur se trouve ici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     try
    /*    */     {
    /* 22 */       ajc$postClinit(); } catch (Throwable localThrowable) { ajc$initFailureCause = localThrowable;
    /*    */     }
    /*    */   }
    La décompilation c'est pas toujours très fiable (d'où le fait que les sources sont fournis pour les applications qui souhaitent être modifiées). Ensuite, je vois que ça parle d'aspectJ, ça m'étonnerait donc grandement que cette application se limite à cette seule classe (ou sinon je ne vois plus l'intérêt d'aspectJ).
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Robin56 Voir le message
    Je te conseille déjà de créer un projet Java et d'y intégrer ton code, ça sera déjà plus pratique.


    Tu as intégré les librairies externes qui sont nécessaires, moi je te parle de d'autre classe Java qui ont du être créé dans ce projet.


    La décompilation c'est pas toujours très fiable (d'où le fait que les sources sont fournis pour les applications qui souhaitent être modifiées). Ensuite, je vois que ça parle d'aspectJ, ça m'étonnerait donc grandement que cette application se limite à cette seule classe (ou sinon je ne vois plus l'intérêt d'aspectJ).
    l'application est constituee de centaines de classes
    et je n'arrive pas a creer un projet dans eclipse a partir d'un dossier
    comment je peux connaitre la classe qui contient la definition de ajc$postclinit parmi toutes les classes
    je veux seulement recompiler une seule classe et pas tout le projet

  6. #6
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Citation Envoyé par ProfessionalGold Voir le message
    l'application est constituee de centaines de classes
    Je m'en doutais bien

    Citation Envoyé par ProfessionalGold Voir le message
    je veux seulement recompiler un seule classe et pas tout le projet
    Quel intérêt de compiler une seule classe ? Ton projet (ton morceau de projet) ne fonctionnera pas pour autant. Surtout que ça risque d'être une opération tirage de fil et que tu vas nécessiter au final toutes les classes du projet.
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  7. #7
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Robin56 Voir le message
    Je m'en doutais bien


    Quel intérêt de compiler une seule classe ? Ton projet (ton morceau de projet) ne fonctionnera pas pour autant. Surtout que ça risque d'être une opération tirage de fil et que tu vas nécessiter au final toutes les classes du projet.
    Je dois vous expliquer le contexte
    l'application est constituee de plusieurs fichiers jar interconnectees entre elles
    comment je peut fusionner tous ces fichiers jar dans un projet eclipse
    si c'est possible SVP expliquez

  8. #8
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Citation Envoyé par ProfessionalGold Voir le message
    Je dois vous expliquer le contexte
    l'application est constituee de plusieurs fichiers jar interconnectees entre elles
    comment je peut fusionner tous ces fichiers jar dans un projet eclipse
    si c'est possible SVP expliquez
    Eh bien tu ne peux pas, c'est le principe d'aspectJ que de rendre l'interconnexion de plugins possible. Du coup, tu n'as pas un JAR seul mais une multitudes de services interdépendants entre eux.
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  9. #9
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2011
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Robin56 Voir le message
    Je m'en doutais bien


    Quel intérêt de compiler une seule classe ? Ton projet (ton morceau de projet) ne fonctionnera pas pour autant. Surtout que ça risque d'être une opération tirage de fil et que tu vas nécessiter au final toutes les classes du projet.
    Citation Envoyé par Robin56 Voir le message
    Eh bien tu ne peux pas, c'est le principe d'aspectJ que de rendre l'interconnexion de plugins possible. Du coup, tu n'as pas un JAR seul mais une multitudes de services interdépendants entre eux.
    Donc pas de solution??

    qu'elle est la meilleur decompilateur java qui peut decompiler les "inner class"
    j'ai trouve dans un autre forum que le symbol $ signifie que la methode se trouve dans une "inner class" que le decompilateur n'arrive pas a decompiler

  10. #10
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Je précise juste une mise en garde sur le fonctionnement de ce forum : il est interdit de parler hack ou crack de logiciel si l'auteur dudit logiciel ne l'a pas autorisé.
    Si tu cherches à décompiler, c'est que les sources ne sont pas disponibles. Dans la plupart des cas, cela s'applique à un logiciel soumis au droits d'auteurs sur lequel le reverse engineering est interdit.
    Est-ce le cas ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

Discussions similaires

  1. Erreur de compilation après modification du Uses
    Par DevelOpeR13 dans le forum Langage
    Réponses: 5
    Dernier message: 30/10/2007, 14h23
  2. Réponses: 2
    Dernier message: 23/09/2003, 14h32
  3. Réponses: 10
    Dernier message: 22/09/2003, 21h58
  4. Réponses: 4
    Dernier message: 27/08/2003, 21h34
  5. Réponses: 2
    Dernier message: 04/03/2003, 23h24

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