Зависимость плагина Maven не добавляется в путь к классам в многомодульном сценарии - PullRequest
0 голосов
/ 14 июля 2011

У меня есть многомодульный проект maven со следующей структурой:

  • Root
    • sub-module1
    • sub-module2
    • sub-module3

Теперь я создал плагин maven, который должен генерировать источники.Я добавил плагин в pom sub-module2.Эта конфигурация плагина зависит от «sub-module1».Поэтому, если я сейчас вызываю «mvn clean compile» на «sub-module2», плагин генерирует мне источники информации «sub-module1».Но если я назову сейчас «mvn clean compile» в проекте Root, источники не будут сгенерированы.Плагин выполняется, но выглядит так, что зависимость плагина от субмодуля 1 не добавляется в путь к классам: / ... есть у кого-нибудь идея, в чем проблема?Это ошибка maven?

РЕДАКТИРОВАТЬ:

Это плагин, который я написал сам ... его для создания исходных файлов flex с помощью некоторых XML-файлов субмодуля1.Плагин работает в фазе «создания источников».Вот как плагин настроен в pom:

<plugin>
    <groupId>xxx</groupId>
    <artifactId>code-generator-plugin</artifactId>
    <executions>
        <execution>
            <goals>
                <goal>generate</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <!-- Generate by default only classes for our metadata -->
        <catalogs>
            <catalog>/xxx/.*</catalog>
        </catalogs>
        <!-- Generated files will be placed directly in the source folder -->
        <outputFolder>src/main/flex</outputFolder>
    </configuration>
    <dependencies>
        <!-- Don't forgot this dependency to the API project -->
        <dependency>
            <groupId>xxx</groupId>
            <artifactId>api</artifactId>
            <!-- We have to put version here because dependencyManagement -->
            <!-- doesn't work for plugin dependencies -->
            <version>${project.version}</version>
        </dependency>
    </dependencies>
</plugin>

Это плагин, определенный в pom sub-module2 ... зависимость от artifactId "api" является "sub-module1"я описал в верхней части моего поста

1 Ответ

0 голосов
/ 09 июля 2015

Ответил в комментариях:

Боже мой ... я трачу сейчас 3 часа, чтобы найти проблему ... Все работает отлично. Проблема была в рабочем каталоге / и релятиве дорожка. Если я вызываю mvn clean compile на подмодуле, все было генерируется в нужном месте ... если я вызову его в корневом модуле источники, где генерируется int "Root / src / main / flex .." вместо "Root / sub-module2 / src / main / flex ...." ... извините за трату вашего времени : / ... мне нужно добавить базовый каталог maven для размещения файлов в правильное место ... - Майкл 14 июля '11 в 13: 44

...