23 outubro 2009

[Maven] Problemas ao baixar as dependências?

Eu não sou o expert em Maven, mas eu fuço as coisas (como todo bom computeiro). Daí eu acabei achando coisas que normalmente não aparecem logo de cara.

Atualizando/reconstruindo o índice


Vá até Window -> Show View -> Other no seu Eclipse.



Agora vá até a visão do Maven, clique no repositório http://repo1.maven.org/maven2, clicando com o botão direito e selecione Atualizar Índice



Se vocÊ também selecionou a visão Progress, lá da aba Geral em Window -> Show View -> Other, você perceberá que o plugin do Maven no eclipse baixará um índice para cada lib existente no repositório, contendo todas as versões existentes até então.



Se esse era o seu problema, depois disso, tudo vai funcionar tranqulamente...

Configurando espelhos para o repositório


Caso ainda assim você tenha problemas em encontrar as dependências, você poderia adicionar mirrors aos repositórios. Crie um arquivo chamado settings.xml dentro da pasta ${home-do-usuario}/.m2/ com o seguinte conteúdo:

<settings>
  .
  .
  .
  <mirrors>
    <mirror>
      <id>ibiblio.org</id>
      <name>
        ibiblio Mirror of http://repo1.maven.org/maven2/
      </name>
      <url>
        http://mirrors.ibiblio.org/pub/mirrors/maven2
      </url>
      <mirrorOf>central</mirrorOf>
    </mirror>
  </mirrors>
  .
  .
  .
</settings>


Para mais informações, leia este tutorial.

Configurando conexão usando um proxy


Se você está sob um proxy (provavelmente dentro de uma empresa - quem colocaria um proxy em casa?), crie (ou edite, caso já o tenha criado) um arquivo chamado settings.xml na pasta ${home-do-usuario}/.m2/

<settings>
  .
  .
  .
  <proxies>
    <proxy>
      <active>
        true
      </active>
      <protocol>
        http
      </protocol>
      <host>
        proxy.somewhere.com
      </host>
      <port>8080</port>
      <username>proxyuser</username>
      <password>somepassword</password>
      <nonProxyHosts>
        www.google.com|*.somewhere.com
      </nonProxyHosts>
    </proxy>
  </proxies>
  .
  .
  .
</settings>

A parte do username e password somente deve ser usada se para ter acesso à rede externa vocÊ necessitar de usuário e senha. A parte do nonProxyHosts normalmente é utilizada para a rede interna da empresa, caso a equipe de desenvolvimento utilize também um repositório local para o maven.

Para mais informações, veja este tutorial

Isso é tudo, pessoal!

Creative Commons License
Esta obra está licenciada sob uma Licença Creative Commons.
Comentários
3 Comentários

3 comments:

Heronildes disse...

computeiro?!!! hhohohoohhoh, não quero te ver por lá mocinho, hohohohohho

Anônimo disse...

Bom post, como uso e gosto do maven o assunto me interessou e por curiosidade fui seguir os passos sobre reconstrução do indice e não encontrei essas opções no eclipse ganymede. Nele o procedimento seria: window -> preferences -> Maven -> Reindex Local Repository. Nessa mesma tela você ainda tem a opção de configurar para o maven baixar além da dependência o fonte e o javadoc correspondente. ;)

Soriano disse...

Bem, "Anônimo", eu me baseei na versão mais nova do Eclipse, o Galileo, e no plugin do Maven no Eclipse, o m2eclipse, que você pode instalar por aqui: http://m2eclipse.sonatype.org/

Postar um comentário

Regras são chatas, mas...

- Seu comentário precisa ter relação com o assunto do post;
- Em hipótese alguma faça propaganda de outros blogs ou sites;
- Não inclua links desnecessários no conteúdo do seu comentário;
- Se quiser deixar sua URL, comente usando a opção OpenID;
- CAIXA ALTA, miguxês ou erros de ortografia não serão tolerados;
- Ofensas pessoais, ameaças e xingamentos não são permitidos;