O arquivo settings.xml possui elementos que são usados na configuração e execução do Maven, como no pom.xml, porém este não devem ser empacotados em qualquer projeto ou distribuídos para um público. Esse arquivo inclui valores que direcionam para repositórios locais, servidores de repositórios remotos alternativos e informações de autenticação.

Pré-requisitos

Antes de começar a seguir os passos do tutorial é preciso ter certeza de que se tem um ambiente minimamente preparado para reproduzir o exemplo. Abaixo estão os requisitos principais.

Requisitos:

  1. Projeto do tipo mobile criado. Caso haja dúvidas de como criar esse tipo de projeto acesse o link ( Criar projeto );
  2. Ter conhecimento sobre o Maven. Para mais informações, acesse o link (Maven).
  3. Ter conhecimento sobre as configurações do settings.xml, veja a documentação de referência em (Settings Reference Settings).
  4. Habilitar o botão Modo Avançado.

Visão geral

Nesse tutorial iremos aprender a criar o arquivo settings.xml do Maven, permitindo o download de bibliotecas privadas com acesso restrito.


Figura 1 - Processar Alvos com repositórios privados e acesso restrito


Aviso

Ao Processar os Alvos antes de configurar as dependências, será exibido uma mensagem de erro.

Resumo do settings.xml

A estrutura XML do settings está organizada de forma a facilitar a configurações no Maven, abaixo segue um resumo simples da sua estrutura.

  • "Elementos da raiz": tags de configuração do usuário e sistema;
  • proxies: referente a configurações da requisição do proxy;
  • servers: contém informações necessárias para as configurações do servidor;
  • mirrors: espelho para download de determinadas dependências alternativas;
  • profile: modifica alguns parâmetros do ambiente no processo de build;
    • activation: chaves de ativação de um perfil;
      • so: ativa os atributos de um sistema operacional;
      • propertyusada para ativar um perfil;
      • fileespecificação de arquivo usado para ativar um perfil;
    • repositoriesestabelece conexões com o repositório remoto;
      • releases: políticas de download;
      • snapshots: políticas de download;
    • pluginRepositoriescontém as informações necessárias para estabelecer conexões com o repositório remoto.


Saiba mais

Veja a estrutura XML completa e em detalhes no link settings.

Passos

Criando o arquivo settings.xml

Por padrão, o arquivo settings.xml não é gerado ao criarmos um projeto no Cronapp. Nesse caso, o usuário deverá criar o arquivo no diretório raiz do seu projeto.

Após habilitar o botão Modo Avançado (destaque 1 da figura 2), clique com o botão direito do mouse no nome do projeto na árvore de arquivos, selecione Novo, depois escolha Outro, insira o nome do arquivo "settings.xml" na janela que abrir e clique em OK. (Figura 2)


Figura 2 - Criando o arquivo settings.xml na raiz do projeto

Biblioteca com acesso privado

Chamada no pom.xml

No Maven, o arquivo pom.xml (ou Definições Maven) possui as bibliotecas baixadas no nosso projeto pelo Maven, no caso de bibliotecas privadas com acesso restrito, isso também deve acontecer, porém os dados de autenticação ficarão no arquivo settings.xml.

Abra o arquivo pom.xml (ou Definições Maven) e adicione os dados do repositório privado dentro da tag <repositories> (Figura 3). No exemplo abaixo, estamos chamando os dados de uma dependência privada fictícia.


Figura 3 - Exemplo de repositório privado no pom.xml

Mais sobre

Para mais informações sobre o pom.xml e como configurá-lo, acesse a documentação oficial Pom reference.

Configurando o settings.xml

De volta ao arquivo settings.xml, abra o arquivo que está na raiz da árvore de arquivos, caso não esteja aberto, para começar a editá-lo. Siga o passo abaixo.


Figura 4 - Editando o arquivo settings.xml


Vamos adicionar o código abaixo, com as informações mínimas necessárias para permitir o acesso a uma dependência privada com acesso restrito. Nela estamos inserindo informações como nome do diretório, localização, nome do usuário, senha e algumas outras informações.

settings.xml
<?xml version="1.0" encoding="UTF-8"?>
<settings
	xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd"
    xmlns="http://maven.apache.org/SETTINGS/1.1.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<servers>
		<server>		
			<id>libs-release</id>
			<username>NomeDoUsuario</username>
			<password>Senha</password>
		</server>
	</servers>
	<profiles>
		<profile>
			<id>artefatos</id>
			<repositories>
				<repository>
					<id>libs-release</id>
					<name>libs-release</name>
					<releases>
						<enable>true</enable>
					</releases>
					<url>https://artefatos.cronapp.com.br/libs-release</url>
				</repository>
			</repositories>
		</profile>
	</profiles>
	<activeProfiles>
		<activeProfile>artefatos</activeProfile>
	</activeProfiles>
</settings>


Saiba mais

Caso tenha alguma dúvida sobre o uso de algumas das tags, favor acessar a documentação oficial em Maven Settings.

Baixando as dependências

Para baixar as dependências, salve todos os arquivos editados, clique com o botão direito do mouse no arquivo pom.xml (ou Definições Maven) e selecione Maven >  Processar Alvos (Figura 5). Aparecerá a janela de Confirmação com o campo Insira o valor preenchido por padrão com "dependency:resolve -U", isso significa que esse valor força a atualização das dependências.



Figura 5 - Processando alvos


Após baixar as dependências, a informação "BUILD SUCCESS" deve aparecer na aba de informações Saída, confirmando o êxito na ação (Figura 6).


Figura 6 - Mensagem de sucesso

Nesta página

  • Sem rótulos