aspectj-maven-plugin, не охватываемый жизненным циклом в Kepler

Я только что загрузил OEPE (Kepler) и установил разъемы m2e и m2e-wtp. Я обнаружил, что по этому пути: Preferences ->Maven->Lifecycle mappings->Open mapping data жизненного цикла есть предварительно настроенный xml-файл, который говорит, что maven должен игнорировать цель компиляции для AspectJ, и я предполагаю, что именно поэтому библиотеки времени выполнения AspectJ не добавлен в проект, следовательно, затмение не признает проект AspectJ.

<?xml version="1.0" encoding="UTF-8"?>
<lifecycleMappingMetadata>
<pluginExecutions>
    <pluginExecution>
        <pluginExecutionFilter>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>aspectj-maven-plugin</artifactId>
            <versionRange>1.6</versionRange>
            <goals>
                <goal>compile</goal>
            </goals>
        </pluginExecutionFilter>
        <action>
            <ignore />
        </action>
    </pluginExecution>
</pluginExecutions>

Я закомментировал эти строки в файле XML и перезагрузил его еще раз. Теперь IDE не игнорирует тег плагина AspectJ в жизненном цикле, но файл pom жалуется, что не может распознать тег выполнения.

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.4</version>
<dependencies>
    <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjrt</artifactId>
        <version>${aspectj.version}</version>
    </dependency>
</dependencies>
<configuration>
    <source>1.6</source>
    <target>1.6</target>
</configuration>
<executions>
    <execution>
        <goals>
            <goal>compile</goal>
        </goals>
    </execution>
</executions>
</plugin>

Используя индиго, m2e-wtp смог распознать <execution> тег для плагина aspectj и возможность автоматического добавления исполняемых библиотек AspectJ в проект, хотя в Kepler это не так. (Я думаю, что работа m2e-wtp - сделать проект AspectJ из pom, но не совсем уверен.)

Btw. Как я могу заставить вещи работать как в Индиго? Я знаю, что могу щелкнуть правой кнопкой мыши по проекту и преобразовать его в аспектный проект, чтобы решить проблему, но я хочу, чтобы IDE и плагины поняли из файла pom, что этот проект нуждается в jar AspectJ. Любая идея?

2 ответа

Вот как я начал работать, сначала убедитесь, что вы установили поддержку AJDT, установив "AspectJ Development Tools (AJDT)" и "Компилятор AspectJ для Eclipse" с сайта обновления AJDT: http://download.eclipse.org/tools/ajdt/43/update Это можно сделать с помощью пункта меню "Справка / Установка нового программного обеспечения".

Затем установите соединитель M2E вручную, установив AJDT M2E с помощью этого сайта обновления: http://dist.springsource.org/release/AJDT/configurator/

Просто напоминание

Не используйте ссылки по умолчанию eclipse mars для плагинов ajdt, вместо этого используйте ссылки выше. Они отлично работают и для Марса

Другие вопросы по тегам