Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
onixred
7 лет назад

Записки юного разработчика, знакомство с bitbucket часть 4 [свой сайт, например для java doc]

Всем приват.


Я был в отпуске (трудился на огороде) времени совсем не было. Решил продолжить свою записку и написать о том как bitbucket и github можно опубликовать java doc или просто создать свой статический сайт.

источник картинки

Нам, как обычно, нужен новый репозиторий для публикации сайта, я уже не один раз писал как это сделать. Создаем открытый репозиторий в определенном формате <username>.bitbucket.org я создал вот этот onixred.bitbucket.org (ограничение один репозиторий для всех проектов).

Для github такой проблемы нет любой репозиторий может быть сайтом достаточно зайти по странице

http://<some-username>.github.com/<project-name>

Это была разминка приступим к главному


источник картинки
Открываем наш проект commons допустим нам нужно при развертывание (deploy) загружать документацию что бы админы и другие разработчики могли смотреть и изучать наш проект. Для этого нам нужно изменить pom.xml

<properties>
    ...
    < ! -- свойства для публикации java doc -- >
    <scm-publish.scmBranch>master</scm-publish.scmBranch>
    <scm-publish.pubScmUrl>scm:git:git@bitbucket.org:onixred/onixred.bitbucket.org.git</scm-publish.pubScmUrl>
    <scm-publish.siteDocOuputDirectory>${project.build.directory}/site</scm-publish.siteDocOuputDirectory>
    < !-- Overwrite from Parent Pom -- >
    <changelog.fileUri>${changelog.bitbucket.fileUri}</changelog.fileUri>
    <changelog.revision.fileUri>${changelog.revision.bitbucket.fileUri}</changelog.revision.fileUri>

    <reportOutputDirectory>${project.build.directory}/site/${project.artifactId}</reportOutputDirectory>
</properties>

<parent>
    <groupId>com.clickconcepts.project</groupId>
    <artifactId>master-site-pom</artifactId>
    <version>0.20</version>
</parent>

Теперь по порядку

  • scm-publish.scmBranch для bitbucket указываем master, для github указываем pages - ветка куда будет заливаться сайт.
  • scm-publish.pubScmUrl для bitbucket указываем scm:git:git@bitbucket.org:onixred/onixred.bitbucket.org.git
    для github указываем scm:git:git@github.com:<some-username>/<project-name>.git - репозиторий где храниться документация
  • scm-publish.siteDocOuputDirectory для bitbucket и github указываем каталог который нужно скопировать в хранилище в нашем случае это ${project.build.directory}/site папка site.
  • changelog.fileUri для bitbucket указываем ${changelog.bitbucket.fileUri} для github указываем ${changelog.github.fileUri} - переопределяем родительское свойство
  • changelog.revision.fileUri для bitbucket указываем ${changelog.revision.bitbucket.fileUri} для github указываем ${changelog.revision.github.fileUri} - переопределяем родительское свойство
  • reportOutputDirectory - путь к папке где будет создаваться документация на выходе (mvn clean javadoc:javadoc).

Отлично теперь добавить плагин для генерации html страниц на основе java doc

<build>
    ...
    <plugins>
    ...
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <configuration>
                <doctitle>This API for ${project.name} ${project.version}</doctitle>
                <windowtitle>This API for ${project.name} ${project.version}</windowtitle>
                <reportOutputDirectory>${reportOutputDirectory}</reportOutputDirectory>
                <destDir>apidocs</destDir>
            </configuration>
        </plugin>
    </plugins>
</build>

Расшифровка

  • doctitle - отображаемый заголовок, в начале файла
  • windowtitle - Определяет текст в HTMLтег title
  • reportOutputDirectory - Определяет каталог, в котором сохраняется HTML-файлы.
  • destDir - назначение каталога.

Вот и все

Наша рутина закончилась, теперь нужно запустить сборщик проекта командой mvn clean javadoc:javadoc scm-publish:publish-scm deploy - генерируем документацию, публикуем на сайт, и делаем deploy (копируем артефакт в свой репозиторий) и посмотреть результат.
Если вы сделали все верно то результат сборки будет таков


Давайте посмотрим хранилище onixred.bitbucket.org

Вот наш коммит с новой документацией
Теперь посмотрим нашу документацию результат примерно таков

Всем спасибо за внимание

Все собранные средства с данного поста пойдут на аренду vps хостинга для java-сервисов, которые я планирую написать для голоса.
5
196.346 GOLOS
На Golos с December 2016
Комментарии (9)
Сортировать по:
Сначала старые