Рубрики
Без рубрики

Размещение репозитория maven на Github: сайт-maven-плагин

В этой статье представлено пошаговое руководство по публикации проекта maven с GitHub с использованием site-maven… Помечено github, java, maven, android.

В этой статье представлено пошаговое руководство по публикации проекта maven с GitHub с использованием site-maven-plugin .

Предпосылки

  • Репозиторий проекта на Github
  • Java и Maven
  • Знакомство с конфигурацией Maven

Создайте репозиторий для своего проекта maven на Github, если у вас его еще нет, и продвигайте свой проект maven. Этот метод будет использовать плагин site-maven для отправки артефактов на Github.

Этот подход не вызывает конфликтов с gh-страницами и другими ветвями, поскольку артефакты помещаются в ветку mvn-repo вашего репозитория, каждый раз, когда выполняется команда mvn deploy , будет опубликован новый артефакт сборки.

Во-первых, артефакт maven должен быть развернут во временном расположении в каталоге сборки/назначения. Добавьте в проект следующий репозиторий pom.xml:


    
        internal.repo
        Temporary Staging Repository
        file://${project.build.directory}/mvn-repo
    

Добавьте конфигурацию плагина maven-deploy в свой pom.xml:


    maven-deploy-plugin
    2.8.2
    
        internal.repo::default::file://${project.build.directory}/mvn-repo
    
 

После добавления вышеупомянутого репозитория и плагина в ваш pom.xml выполнить развертывание mvn , репозиторий maven будет развернут в каталоге target/mvn-repo/ . Следующим шагом будет развертывание в ветке github mvn-repo .

Настройте информацию об аутентификации github в ~/.m2/settings.xml чтобы включить плагин site-maven, нажмите на github. если файл settings.xml не существует, его следует создать.

Существует несколько способов аутентификации github, добавьте одну из следующих конфигураций в свой ~/.m2/settings.xml .

используя свое имя пользователя и пароль на github:


  
    
      github
      GitHubLogin
      GitHubPassw0rd
    
  

использование ТОКЕН OAUTH2 :


  
    
      github
      OAUTH2TOKEN
    
  

Затем добавьте следующее в свой pom.xml :


  github

Последним шагом является настройка site-maven-плагина для отправки вашего локального промежуточного репозитория целевого/mvn-репозитория/ в ваш удаленный mvn-репозиторий филиал.


    com.github.github
    site-maven-plugin
    0.11
    
        Maven artifacts for ${project.version} 
        true  
        ${project.build.directory}/mvn-repo 
        refs/heads/mvn-repo 
        **/*
        YOUR-REPOSITORY-NAME 
        THE-REPOSITORY-OWNER 
    
     
      
        
          site
        
        deploy
      
    

repositoryOwner значение – это родительское имя репозитория, если репозиторий принадлежит организации github, значением будет название организации, а если репозиторий принадлежит пользователю, значением будет имя пользователя например, для репозитория ключ-значение бд/ключ-значение-бд-java значение имени репозитория будет ключ-значение-бд-java и значение владельца репозитория будет значение ключа db .

Выполните развертывание mvn , чтобы загрузить свой артефакт на github. Ветвь mvn-репо будет создана, если она не существует.

Посещение github.com в своем браузере выберите ветку mvn-repo и убедитесь, что все ваши двоичные файлы загружены.

Ура . Ваш проект maven теперь доступен для использования в других проектах.

Каждый раз, когда вы запускаете команду mvn clean deploy в своем проекте, последние артефакты будут загружаться на github.

Другой проект maven, использующий ваш проект, может быть настроен для извлечения вашего артефакта из github. Добавьте следующий фрагмент в pom.xml файлы, которые зависят от вашего проекта.


    YOUR.PROJECT.GROUPID
    ARTIFACT-ID
    VERSION


    ARTIFACT-ID
    https://raw.github.com/REPOSITORYOWNER/REPOSITORY-NAME/mvn-repo/

После добавления свойств в pom.xml проект автоматически загрузит ваши банки репозитория maven с github.

Оригинал: “https://dev.to/iamthecarisma/hosting-a-maven-repository-on-github-site-maven-plugin-9ch”