Большинство из нас используют Maven для создания наших проектов и подготовки JAR или WAR или EAR для развертывания на сервере. Однако в течение жизненного цикла разработки мы не понимаем, что Maven можно использовать для более высокой цели — «Создать сайт проекта, чтобы показать всю информацию о проектах». В течение многих лет, когда я сам использовал Maven, я никогда не задумывался над тем, чтобы использовать это в своих интересах — наверное, я никогда не хотел делать что-то подобное.
На прошлой неделе, когда я запустил свой проект в виде библиотеки с открытым исходным кодом, я понял, что мне нужен простой и быстрый способ сделать множество артефактов доступными для моего проекта. Я использовал Google для размещения кода и отслеживания проблем, однако есть и другие документы, такие как JavaDocs, список зависимостей, XRef Source, которые предоставляют много дополнительной информации, которая была бы полезна для тех, кто когда-либо решит использовать библиотеку.
Необходимость, если мать изобретения
В моем случае это не было изобретением, но это был опыт обучения, когда я начал изучать maven-site-plugin . Этот плагин генерирует различные отчеты для проекта maven, включая те, которые были настроены в файле pom.xml. Однако это не было простой реализацией, потому что у меня были некоторые дополнительные требования, такие как размещение кода Google Analytics и размещение пользовательской информации о проекте на моем сайте. В этой статье я попытаюсь объяснить некоторые вещи, которые я сделал, чтобы помочь мне создать свой сайт.
Чтобы понять, что я сделал, вы должны быстро просмотреть сайт, который я развернул. Теперь я начну принимать по одному разделу за раз и объясню, какие изменения я внес в свой pom, чтобы этот раздел работал. Я также приложил файл pom к этому сообщению для быстрого ознакомления.
Изображение справа объясняет основные разделы POM.XML. В этом разделе будут настроены страницы информации о проекте и команды проекта . Я добавил только несколько деталей, которые мне были нужны, но вы можете добавить гораздо больше информации по мере необходимости.
Следующий раздел содержит информацию о лицензии. Я использую Apache License 2.0 и, следовательно, я предоставляю URL для лицензии от Apache. В этом разделе создается страница « Лицензия проекта» для сайта. Следующие два раздела определяют параметры хранилища проекта и управления проблемами (управление дефектами).
Все остальное — стандартные вещи POM, то есть зависимости и плагины Build для запуска тестовых случаев и т. Д. Я не собираюсь углубляться в них, потому что там столько же учебников по одному и тому же. Однако, что важно, так это разделы о Java-кодах и справочнике исходного кода . Чтобы сгенерировать эти два раздела как часть сайта Maven, необходимо настроить подключаемые модули отчетности следующим образом:
<reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <configuration> <links> <link>http://download.oracle.com/javase/6/docs/api/</link> </links> <!--DVFMTSC--> </configuration> <version>2.8</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jxr-plugin</artifactId> <version>2.3</version> </plugin> </plugins> </reporting>
И, наконец, для настройки левого навигационного меню вам нужно добавить файл site.xml в папку «src \ site» вашего проекта и указать детали меню и их ссылки на страницы.
В этом файле вы также можете добавить код для Google Analytics, вы увидите на изображении ниже, что я добавил код Google Analytic в раздел заголовка, который затем копирует код на каждую из статических HTML-страниц и позволяет мне отслеживать одно и тоже.
Я надеюсь, что вы найдете это полезным и сможете использовать его для публикации своего сайта.
От http://scratchpad101.com/2011/08/30/publishing-project-maven/