Как создать Ваш собственный скин для maven 2 проекта
Maven - это open source система управления проектами, созданная в Apache software foundation. В ней присутствуют множество интересных вещей, включая понятие модели проекта (Project Object Model) и систему плагинов.
Одним из стандартных, и наиболее часто используемых плагинов, является site плагин (maven-site-plugin). Он предоставляет возможность генерации документации по проекту в виде web сайта. Начиная с версии 2.0-beta-5 появилась возможность создавать свои собственные скины для сайта с документацией.
Эта заметка будет интересна разработчиков, которые уже знакомы с системой maven 2 и используют ее. Я постараюсь сделать небольшое введение о том, как сделать свой скин.
Итак, с чего же начать? Главное, что ваш скин это тоже maven проект, который идет в виде плагина. Для этого в модели проекта вы должны указать, что ваш проект - плагин (“maven-plugin”):
<project> <modelVersion>4.0.0</modelVersion> <groupId>com.kobyleha.maven.skins</groupId> <artifactId>embedchat-skin</artifactId> <packaging>maven-plugin</packaging> <version>1.0</version> <name>Custom skin for embedchat application project</name> <url>http://embedchat.org</url> </project>
Все ресурсы сайта (стили, рисунки) должны быть расположены в папке “/src /resources”. Вы можете сделать вложенные папки. Как пример, можно использовать “/src /resources /css” для стилей и “/src /resources /images” для картинок.
Сердце вашего скина - velocity шаблон (site.vm). Этот файл должен находиться в папке“/src /resources /META-INF /maven/”. Для начала, Вы сожжете взять стандартный шаблон, используемый в maven, и изменить его как вам хочется. Стандартный шаблон можно найти в jar архиве вашего локального репозитория /org /apache/maven /doxia /doxia-site-renderer /1.0-alpha-8 / doxia-site-renderer-1.0-alpha-8.jar. Файл в jar архиве /org /apache /maven /doxia /siterenderer /resources /default-site.vm.
Site.vm - это velocity шаблон, который может использовать любые ресурсы, описанные в модели проекта. Как пример, Вы можете получить доступ к списку разработчиков, дополнительным модулям или зависимостям.
Немного дизайнерской работы, и я думаю, что Вы сможете получить хороший скин для сайта вашего проекта.
Далее устанавливаем скин в репозиторий (команда ‘mvn install’) и применяем его в каком-то проекте для генерации сайта.
Для использования скина необходимо добавить запись в дескриптор генерируемого сайта (site.xml):
<skin> <groupId>com.kobyleha.maven.skins</groupId> <artifactId>embedchat-skin</artifactId> <version>1.0</version> </skin>
И используя команду “mvn site”, сгенерировать сайт.
Для примера, я сделал скин для проекта embedchat. И demo проект, который просто использует скин.

Ресурсы:
»
- 3680 просмотров
- English
Мучался-мучался
Несколько дополнений
packagingможно простоjarуказать, ничего такого особенного в этом артефакте нет.- s/mvn install/mvn clean install
- s/mvn site/mvn clean site
чтобы небыло казусов с ресурсами :)m2\repository\org\apache\maven\skins\maven-default-skin\1.0\maven-default-skin-1.0.jar\cssи картинки там рядом.project/properties/propertyName=propertyValueи из шаблона уже ссылаться можно сюда через$project.properties.propertyNameОтправить комментарий