Começando do zero: um guia completo para construir servidores privados Nexus e configurar armazéns Maven

 I. Introdução

Há muitas vantagens em usar o Nexus para construir um servidor privado, a mais importante delas é que você pode controlar o acesso e a implantação de componentes. Se não houver um servidor privado Nexus, todos os componentes de que precisamos precisam ser baixados localmente por meio do armazém central do Maven e do armazém Maven de terceiros, e todos em uma equipe baixam repetidamente os componentes do armazém do Maven. Sem dúvida, a carga no armazém é aumentou. E a largura de banda da rede externa é desperdiçada. Se a velocidade da rede for lenta, isso também afetará o andamento do projeto. Depois de usar o Nexus para construir um servidor privado, você só precisa baixá-lo uma vez no servidor privado, e então poderá utilizá-lo em toda a equipe, o que melhora muito a eficiência.

Além disso, o Nexus também tem muitas outras vantagens, como tamanho reduzido, possui uma interface de operação baseada em ExtJs, usa uma API REST completa baseada em Restlet para oferecer suporte a armazéns proxy, armazéns de host e grupos de armazéns, é baseado em sistemas de arquivos, não precisa contar com bancos de dados e oferece suporte ao gerenciamento de armazém., Suporte à pesquisa de componentes, suporte ao upload de componentes na interface, etc.

2. Construção de servidor privado Nexus

2.1. Introdução ao Nexus

Nexus, um produto da Sonatype, é um poderoso gestor de armazéns que simplifica enormemente a manutenção de armazéns internos e o acesso a armazéns externos. É usado principalmente para construir o servidor privado Maven interno da empresa para compartilhar e usar dependências na equipe.

Os servidores privados Nexus têm muitos benefícios, como:

  1. acelerar compilações;
  2. economizar largura de banda;
  3. Economize largura de banda no repositório central do Maven;
  4. Estável (para lidar com a situação quando o servidor central der errado);
  5. controles e auditorias;
  6. Capacidade de implantar componentes de terceiros;
  7. Um armazém interno local pode ser estabelecido;
  8. Repositórios públicos podem ser construídos.

2.2. Baixe e instale o Nexus

Site oficial do Nexus https://help.sonatype.com/repomanager3/product-information/download

Baixe a versão correspondente de acordo com o seu sistema 

2.2.1. Inicie o Nexus

Encontre o caminho do pacote de instalação
Seu diretório de arquivos\nexus-3.20.1-01\bin

 Digite nexus.exe /run na operação de comando da janela preta aberta

 Se você vir as seguintes palavras, a tabela será iniciada com sucesso

2.2.2. Acessar Nexus

Não sabe seu endereço de acesso ao Nexus? Está tudo bem, eu vou te ensinar.
Seu diretório de arquivos\nexus-3.20.1-01\etc\nexus-default.properties
é o seu arquivo de configuração do nexus aqui

application-port=access Número da porta Nexus (padrão 8081)
application-host=access Endereço IP do Nexus (padrão localhost ip local)
então seu caminho de acesso é  http://localhost:8081 

Se você vir a imagem a seguir, significa que a inicialização foi bem-sucedida

2.2.3. Login no Nexus

A conta é admin e a senha é o diretório do seu arquivo\nexus-3.20.1-01\etc\sonatype-work\nexus3\admin.password

Dica: mudei a senha aqui, então admin.password irá desaparecer (porque é temporário)

Abra o arquivo e copie a senha diretamente para fazer login. Após o login ser bem-sucedido, você será solicitado a inserir a senha novamente. Esta é a etapa de alteração da senha. Você usará essa senha para fazer login no Nexus no futuro .

3. Configuração do armazém Maven

3.1. Introdução ao Maven

Maven é uma ferramenta de gerenciamento de projetos baseada em Java (modelo de objeto de projeto POM), que pode ajudar os desenvolvedores a automatizar a construção, teste e implantação de projetos Java. O Maven gerencia as dependências do projeto por meio de um warehouse central, pode baixar automaticamente as bibliotecas de dependências necessárias e gerar scripts de construção de projeto automaticamente. O uso do Maven pode simplificar bastante o processo de construção e gerenciamento de projetos Java, melhorar a eficiência do desenvolvimento e a qualidade do projeto.

Dicas: O que é uma construção automatizada?

A construção automatizada refere-se a um método de uso de ferramentas ou scripts para automatizar o processo de construção do projeto. No desenvolvimento de software, construção é o processo de conversão do código-fonte em software executável, incluindo compilação, vinculação, empacotamento e muito mais. Tradicionalmente, o processo de construção era realizado manualmente, com os desenvolvedores executando uma série de comandos ou ações para concluir a construção. As compilações automatizadas usam ferramentas de compilação ou scripts para automatizar essas operações, reduzindo o tédio e os erros das operações manuais e melhorando a eficiência e a consistência das compilações.

As compilações automatizadas podem atingir as seguintes funções:

  1. Compilar código-fonte: converte o código-fonte em um binário executável.
  2. Gerenciamento de dependências: Baixe e gerencie automaticamente as bibliotecas dependentes exigidas pelo projeto.
  3. Teste: execute automaticamente processos de teste, como testes unitários e testes de integração.
  4. Empacotamento: Empacotar o código compilado em um pacote implantável.
  5. Geração de Documentação: Gere automaticamente a documentação do projeto.
  6. Implantação: implanta automaticamente o pacote compilado no ambiente de destino.

Ao automatizar compilações, os desenvolvedores podem economizar tempo e esforço, reduzir erros humanos e melhorar a eficiência e a qualidade do desenvolvimento de software.

3.2. Baixe e instale o Maven

Para obter mais detalhes, vá para o tutorial de instalação e configuração do Maven que escrevi

Tutorial de instalação do Maven e configuração do Eclipse e criação do projeto Maven [o mais detalhado da história] http://t.csdn.cn/NbNDK

Quarto, use o Nexus como repositório Maven

4.1. Empacotar e fazer upload do Jar

① Encontre o
caminho do arquivo do diretório de instalação do maven/maven/número da versão/libexec/conf/settings.xml

 ②nó de servidores

        <server><!-- 发布版本-->
             <id>nexus</id> <!-- 随意填写,但项目中repository的id得与这里一致-->
              <username>admin</username> <!-- 账户-->
           <password>admin123</password>  <!-- 密码-->
        </server>
        <server><!-- 发布版本-->
      	   <id>nexus-releases</id> <!-- 随意填写,但项目中repository的id得与这里一致-->
       	   <username>admin</username> <!-- 账户-->
           <password>admin123</password>  <!-- 密码-->
        </server>
        <server><!-- 发布版本-->
             <id>nexus-snapshots</id> <!-- 随意填写,但项目中repository的id得与这里一致-->
              <username>admin</username> <!-- 账户-->
           <password>admin123</password>  <!-- 密码-->
        </server>

 ③nó de espelhos

    <mirror>
      <id>nexus</id>
      <!--表示访问哪些工厂时需要使用镜像-->
      <mirrorOf>*</mirrorOf>
      <url>http://localhost:8081/repository/maven-public/</url>
    </mirror>

Você precisa acessar o site do Nexus para copiar o URL

 É melhor adicionar uma imagem espelhada do Alibaba Cloud aqui

 <!-- 阿里云镜像-->
<mirror>
  <id>alimaven</id>
  <name>aliyun maven</name>
  <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
  <mirrorOf>central</mirrorOf>        
</mirror>
<mirror>  
 <id>alimaven</id>  
 <mirrorOf>central</mirrorOf>  
 <name>aliyun maven</name>  
 <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>  
</mirror> 

Aqui tomamos a ideia como exemplo, outras ferramentas de desenvolvimento são semelhantes

④pom.xml configura as informações de endereço do seu armazém Nexus

  <!-- 本地nexus私有库-->
  <distributionManagement>
    <snapshotRepository>
      <id>snapshots</id>
      <name>snapshots</name>
      <url>http://localhost:8081/repository/maven-snapshots/</url>
    </snapshotRepository>
    <repository>
      <id>releases</id>
      <name>release</name>
      <url>http://localhost:8081/repository/maven-releases/</url>
    </repository>
  </distributionManagement>

 O URL também é o mesmo, você precisa acessar o site do Nexus para copiá-lo você mesmo

⑤Clique com o botão direito em pom.xml do IDEA ➡Run Maven➡deploy

Se você vir BUILD SUCCESS, significa que o upload foi bem-sucedido.

4.2. Faça referência ao jar da biblioteca Nexus

① Encontre o
caminho do arquivo do diretório de instalação do maven/maven/número da versão/libexec/conf/settings.xml

②nó de perfis

            <profile>
              <!--profile 的 id-->
              <id>nexus</id>
              <repositories>
                  <repository>
                      <!--仓库 id,repositories 可以配置多个仓库,保证 id 不重复-->
                      <id>nexus</id>
                      <!--仓库地址,即 nexus 仓库组的地址-->
                      <url>http://localhost:8081/repository/maven-public/</url>
                      <!--是否下载 releases 构件-->
                      <releases>
                          <enabled>true</enabled>
                      </releases>
                      <!--是否下载 snapshots 构件-->
                      <snapshots>
                          <enabled>true</enabled>
                      </snapshots>
                  </repository>
              </repositories>
              <pluginRepositories>
                  <!-- 插件仓库,maven 的运行依赖插件,也需要从私服下载插件 -->
                  <pluginRepository>
                      <!-- 插件仓库的 id 不允许重复,如果重复后边配置会覆盖前边 -->
                      <id>public</id>
                      <name>Public Repositories</name>
                      <url>http://localhost:8081/repository/maven-public/</url>
                      <!--是否下载 releases 构件-->
                      <releases>
                          <enabled>true</enabled>
                      </releases>
                      <!--是否下载 snapshots 构件-->
                      <snapshots>
                          <enabled>true</enabled>
                      </snapshots>
                  </pluginRepository>
              </pluginRepositories>
          </profile>

 ③nó activeProfiles

  <!-- 激活下载模板-->
    <activeProfiles>
      <activeProfile>nexus</activeProfile>
    </activeProfiles>

④Baixar dependências

repositórios no POM

<!--获取公共的Maven依赖库-->
  <repositories>
    <repository>
      <id>nexus</id>
      <url>http://localhost:8081/repository/maven-public/</url>
      <releases>
        <enabled>true</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
  </repositories>`1

  Neste ponto, seu projeto pode usar o Nexus normalmente.

Meu compartilhamento está aqui, bem-vindo à área de comentários para discutir e comunicar! !

Se você achar útil, por favor, dê um joinha ♥ ♥

Acho que você gosta

Origin blog.csdn.net/weixin_74318097/article/details/132579773
Recomendado
Clasificación