Problemas en Eclipse de proyectos Maven con dependencias a AspectJ

Hace unos días un compañero de trabajo yo nos encontramos con una situación un poco extraña utilizando Maven y AspectJ, digna de comaprtirla. En un proyecto Java en el que utilizamos Maven, algunas de las dependencias en el pom.xml eran las siguientes:

<br />
&lt;dependency&gt;<br />
    &lt;groupId&gt;aspectj&lt;/groupId&gt;<br />
    &lt;artifactId&gt;aspectjrt&lt;/artifactId&gt;<br />
    &lt;version&gt;1.5.3&lt;/version&gt;<br />
&lt;/dependency&gt;<br />
&lt;dependency&gt;<br />
    &lt;groupId&gt;aspectj&lt;/groupId&gt;<br />
    &lt;artifactId&gt;aspectjtools&lt;/artifactId&gt;<br />
    &lt;version&gt;1.5.3&lt;/version&gt;<br />
&lt;/dependency&gt;<br />
&lt;dependency&gt;<br />
    &lt;groupId&gt;aspectj&lt;/groupId&gt;<br />
    &lt;artifactId&gt;aspectjweaver&lt;/artifactId&gt;<br />
    &lt;version&gt;1.5.3&lt;/version&gt;<br />
&lt;/dependency&gt;<br />

Sin embargo, al hacer un mvn eclipse:eclipse en la PC de mi compañero, esas dependencias no se veían reflejadas en el proyecto de Eclipse. La salida del comando de
Maven no mostraba errores, e inclusive bajaba los JARs de AspectJ al repositorio local, y sin embargo, no había rastros de esas dependencias en el Build path del proyecto. En mi PC no había problemas, las dependencias se bajaban y referenciaban de forma correcta.

Probamos diferentes versiones de Maven (2.1.0 y 2.2.0), pero no se solucionó. Probamos diferentes versiones de las dependencias de AspectJ, y tampoco tuvimos suerte. Después de buscar un poco encontramos un par de bugs reportados, en este link, este link y este otro, y comprendimos que el problema venía por el lado del plugin maven-eclipse-plugin de Maven, y no por el lado de nuestro proyecto. Comprobamos que este error se da utlizando las versiones posteriores a la 2.5.1 del plugin (2.6 en adelante), y que las diferencias en nuestros ambientes de
desarrollo se daban porque yo tenía configurado un proxy HTTP, que me retornaba una versión vieja del maven-metadata-central.xml del plugin. En cuanto saqué la configuración del proxy del settings.xml de Maven, Maven actualizó los JARs del plugin en mi PC, y ambos ambientes reflejaron el mismo problema.

El problema se da cuando el soporte para AJDT está activado. Para solucionarlo, debemos agregar la línea <ajdtVersion>none</ajdtVersion> a la configuración de maven-eclipse-plugin en el pom.xml de nuestro proyecto:

<br />
&lt;project ...&gt;<br />
	...<br />
	&lt;build&gt;<br />
		&lt;plugins&gt;<br />
			...<br />
			&lt;plugin&gt;<br />
				&lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;<br />
				&lt;artifactId&gt;maven-eclipse-plugin&lt;/artifactId&gt;<br />
				&lt;configuration&gt;<br />
					...<br />
					&lt;ajdtVersion&gt;none&lt;/ajdtVersion&gt;<br />
					...<br />
				&lt;/configuration&gt;<br />
			&lt;/plugin&gt;<br />
			...<br />
		&lt;/plugins&gt;<br />
	&lt;/build&gt;<br />
	...<br />
&lt;/project&gt;<br />

Referencias

https://fisheye.codehaus.org/browse/MECLIPSE-544
https://fisheye.codehaus.org/browse/MECLIPSE-558
https://bugs.eclipse.org/bugs/show_bug.cgi?id=270554
http://dev.eclipse.org/newslists/news.eclipse.technology.ajdt/msg01933.html

http://maven.apache.org/plugins/maven-eclipse-plugin/examples/ajdt-projects.html

Etiquetado , , . Bookmark the permalink.

Una respuesta a Problemas en Eclipse de proyectos Maven con dependencias a AspectJ

  1. Fabricio says:

    Jose, buenisimo tu link – me salvo porque me estaba volviendo loco con este tema.

    Un abrazo desde Argentina 🙂

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *