MAVEN: como alimentar o pom.xml?

Olá, meus caros! Estou seguindo uma matéria da JAVA Magazine Edição 101, que trata de um projeto crud utilizando maven, spring, hibernate e jsf2. Comecei criando o projeto em maven no eclipse e montando o meu POM.XML, que conterá as bibliotecas utilizadas. No artigo, o autor descreve todo o xml do pom, com todas as dependências… vou colocar um trecho apenas para ilustrar:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>br.com.javamagazine</groupId> <artifactId>OnzeVencedor</artifactId> <packaging>war</packaging> <version>1.0-SNAPSHOT</version> <name>OnzeVencedor Maven Webapp</name> <url>http://maven.apache.org</url> <build> <finalName>OnzeVencedor</finalName> </build> <properties> <org.springframework.version>3.0.6-RELEASE</org.springframework.version> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>com.sun.faces</groupId> <artifactId>jsf-api</artifactId> <version>2.1.6</version> </dependency> <dependency> <groupId>com.sun.faces</groupId> <artifactId>jsf-impl</artifactId> <version>2.1.6</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>javax.persistence</groupId> <artifactId>persistence-api</artifactId> <version>1.0</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${org.springframework.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-expression</artifactId> <version>${org.springframework.version}</version> </dependency> ...Estou montando direitinho, na verdade, copiando mesmo. A minha dúvida é justamente essa… de onde ele tirou essas dependências, isto é, se eu fosse fazer um projeto MEU, do ZERO, utilizando os mesmos frameworks citados aqui, de onde eu obteria a informação para montar esse pom.xml? como eu saberia quais versões utilizar, etc?

Obrigado!

O eclipse auxilia você nesta tarefa. No editor do pom, você pode digitar o nome de uma lib e ele busca nos repositórios as libs compatíveis. Ao selecionar ele já adiciona tudo “certinho” no pom.xml. “certinho” pq as vezes é preciso modificar alguma coisa.

Caso contrário, você pode procurar direto nos repositórios. Por exemplo:

http://mvnrepository.com/

Mas tem projetos que tem um repositório específico. Aí vai de vc ler a documentação do projeto e adicionar o repositório no pom.

Vc pode pesquisar no repositório central. É daqui que o maven faz os downloads dos jars se vc não especificar nenhum outro repositório.

http://search.maven.org/#browse