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

Autres Java Discussion :

Bloqué dans AspectJ avec Eclipse


Sujet :

Autres Java

  1. #1
    Membre éclairé
    Bloqué dans AspectJ avec Eclipse
    Bonjour,

    Je suis en train de m'initier à AspectJ, j'ai Eclipse 3.7.1 avec AspectJ 2.1.3.

    J'ai donc un projet Java appelé "testaspect", qui ne contient qu'une classe :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public class Test {
    	void outtest(){
    		System.out.println("java");
    	}
    	public static void main(String[] args) {
    		new Test().outtest();
    	}
    }


    Et un projet Aspect, appelé "aspecthello" qui contient un seul aspect :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public aspect aspecttest {
    	pointcut testout() :
    		call (void Test.outtest());
    	before() : testout() { 
    		System.out.println("aspect"); 
    	} 
    }


    Le projet Aspect est renseigné dans l' "AspectJ build path" du projet Java, j'ai essayé avec le projet Java renseigné ou non dans le "Inpath" du projet Aspect. Je n'ai aucune erreur ni warning dans l'IDE.

    Mais quand je lance le projet java, j'ai une fenêtre "Errors exist in required project(s)", "aspecthello, testaspect" ; si je fais "proceed", j'ai un message d'erreur :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    java.lang.NoClassDefFoundError: Test
    Caused by: java.lang.ClassNotFoundException: Test
    	at java.net.URLClassLoader$1.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.net.URLClassLoader.findClass(Unknown Source)
    	at java.lang.ClassLoader.loadClass(Unknown Source)
    	at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    	at java.lang.ClassLoader.loadClass(Unknown Source)
    Exception in thread "main"


    J'ai essayé un tas de petites variantes, (avec ou sans "*", avec ou sans "target", avec call ou execute, etc), les résultats sont imperturbablement les mêmes, au point que j'en suis arrivé à me demander si la compilation incrémentale s'effectue. Mais ça fait pareil quand je fais un rebuild du workspace.

    Il semble que je devrais aussi avoir des marqueurs dans la marge, mais je n'ai rien. Donc apparemment quelque chose m'a échappé, probablement dans la configuration de l'un ou l'autre projet ?

    [ajout]

    J'ai une erreur dans la fenêtre "Problems", qui reste même quand j'enlève le projet Java de l'Inpath du projet Aspect ...

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    A cycle was detected in the build path of project 'aspect'. The cycle consists of projects {aspect, testaspect}


    [/ajout]

    Merci.
    Sans danger si utilisé conformément au mode d'emploi.

    (anciennement BenWillard, enfin moins anciennement que ... enfin bon c'est une longue histoire... Un genre de voyage dans le temps...)

  2. #2
    Membre éclairé
    Ok trouvé, juste une erreur classique de build path........
    Sans danger si utilisé conformément au mode d'emploi.

    (anciennement BenWillard, enfin moins anciennement que ... enfin bon c'est une longue histoire... Un genre de voyage dans le temps...)