Я использую maven-docbkx-plugin для генерации HTML и PDF-данных из источников docbook. У меня есть несколько книг, и они связаны друг с другом, используя olinks.Можно ли указать зависимость от конкретной фазы maven?
База данных оливок генерируется на одной фазе maven (генерации ресурсов), а фактическое генерирование HTML и PDF, которое ищет эту базу данных, выполняется в последующей фазе maven (компиляция).
Я разделил проект maven на мультимодульный проект, так как каждая книга содержит десятки включенных поддокументов. Конфигурация docbkx-maven-plugin выполняется в родительском объекте, тогда это только источник docbook верхнего уровня, который должен быть указан в дочерней POM.
Но ... это не работает по-зависимому, поскольку каждый модуль требует, чтобы генерирующие ресурсы каждого другого модуля выполнялись до того, как он выполнил свою фазу компиляции, чтобы он мог получить доступ к базе данных olink каждого из другие книги.
Есть ли способ сделать это в maven? Или мне нужно переструктурировать два проекта maven (что значительно разрушит модульность этого проекта, так как вся конфигурация должна быть объявлена в каждом проекте)?
Структура родительского POM является: ...
<build>
<plugins>
<pluginManagenent>
<plugin>
<groupId>com.agilejava.docbkx</groupId>
<artifactId>docbkx-maven-plugin</artifactId>
<version>2.0.14</version>
<executions>
<execution>
<id>xrefdb</id>
<phase>generate-resources</phase>
<configuration>
...
</configuration>
<goals>
<goal>generate-html</goal>
</goals>
</execution>
<execution>
<id>html</id>
<phase>compile</phase>
<configuration>
...
</configuration>
<goals>
<goal>generate-html</goal>
</goals>
</execution>
</executions>
</plugin>
</pluginManagement>
</plugins>
</build>
</project>
И модули:
<project>
...
<build>
<plugins>
<plugin>
<groupId>com.agilejava.docbkx</groupId>
<artifactId>docbkx-maven-plugin</artifactId>
<version>2.0.14</version>
<configuration>
...
</configuration>
</plugin>
</plugins>
</build>
</project>
Можете ли вы показать минимальный пример, который показывает проблему? Правильно ли вы определили зависимости с другим модулем? Как ты это сделал? – khmarbaise
Я добавил минимальный пример выше. Я не определял явные зависимости между модулями, потому что это создавало бы циклические зависимости, если только я не могу включить фазу в зависимости. –