многомодульный проект и $ {basedir} заполнитель - PullRequest
3 голосов
/ 23 февраля 2012

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

-parent
   -module1
   -module2
   -src
      -main
         -javadoc
             -stylesheet.css
   -pom.xml

Я хочу настроить плагин javadoc в родительском POM.Но мне нужно указать путь к файлу stylesheet.css.Итак, я использую значение ${basedir}\src\main\javadoc\stylesheet.css.Но когда я смотрю на эффективную POM для дочерних модулей, ${basedir} заменяется абсолютным путем к базовому каталогу дочерних модулей, но там нет файла src/main/javadoc/stylesheet.css.Копирование файла stylesheet.css в дочерние модули не является решением, я думаю.

Спасибо

Ответы [ 2 ]

4 голосов
/ 23 февраля 2012

${basedir} (сокращение от ${project.basedir}) - это каталог, в котором находится файл pom.xml проекта.Поэтому для дочерних модулей это свойство будет содержать пути к каталогам module1 и module2 соответственно.

Если вы хотите настроить плагин javadoc в родительском pom.xml , чтобы оно было эффективным длядочерние модули, вы должны использовать ../src/main/javadoc/stylesheet.css.

2 голосов
/ 05 августа 2012

Плагин Maven Javadoc позволяет включать ресурсы таблиц стилей, которые хранятся в файле JAR, как описано здесь: http://maven.apache.org/plugins/maven-javadoc-plugin/examples/stylesheet-configuration.html

Это позволит вам создать JAR только для ресурсов, добавить его в список зависимостей для вашего плагина javadoc и загрузить ресурсы оттуда. Это избавит от необходимости дублировать файлы таблиц стилей или ссылаться на общий набор, развернутый в родительском POM.

...