Dependencia no maven

Pessoal, estou aprendendo a usar o maven2 e estou parado num teste que fiz

Quero testar o uso de dependencia de um outro projeto criado por mim.
Fiz o seguinte:

  1. Criei o projeto DependencyTest que tem apenas a classe SimpleBusiness com o metedo getString
  2. Coloquei este projeto no repositório local
  3. Adicionei o DependencyTest no pom.xml do projeto que irá usar esta dependência

Porém quando dou um Update dependences no eclipse ele não joga o .jar do DependencyTest para o diretótio WEB-INF/lib
joga apenas naquele target/MyProject/WEB-INF/lib

Resultado, qdo quero usar a Classe SimpleBusiness o eclipse nem encontra, pois não está no web-inf

O que será que faltou eu fazer para a lib ser jogada no /lib ???

Coloca o pom.xml do projeto de teste e o pom.xml do projeto que irá usar a dependencia ai.

se ele soh ta colocando na pasta target deve ser pq vc especificou a dependencia com runtime :stuck_out_tongue:

coloca ela como compile e seja feliz ^^

Ok, segue os 2 pom.xml

Projeto: DependencyTest

<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.dependency</groupId>
  <artifactId>DependencyTest</artifactId>
  <version>0.0.1</version>
</project>

Projeto: Project

[code]
4.0.0
br.com.project
PaggoMaven
0.0.1
war
First Maven Project

    <finalName>${project.artifactId}</finalName>
    
    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>jboss-maven-plugin</artifactId>
            <version>1.4</version>
            <configuration>
                <jbossHome>C:\jboss-4.2.3.GA</jbossHome>
                <serverName>default</serverName>
                <fileName>target/${project.artifactId}.war</fileName>
            </configuration>
        </plugin>
    </plugins>
</build>
<dependencies>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate</artifactId>
        <version>3.2.7.ga</version>
    </dependency>
    <dependency>
        <groupId>javax.transaction</groupId>
        <artifactId>jta</artifactId>
        <version>1.1</version>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.11</version>
        <type>jar</type>
        <scope>runtime</scope>
    </dependency>
    <dependency>
    	<groupId>br.com.dependency</groupId>
    	<artifactId>DependencyTest</artifactId>
    	<version>0.0.1</version>
    </dependency>
</dependencies>
[/code]

Eu já tentei colocar esta dependencia como compile, provided, system, import
mas não mesmo assim o .jar não vai pro /lib e assim não consigo encontrar a classe…
O curioso é que o driver do mysql tb não vai pro /lib mas funciona qdo rodo no jboss

Cara tenta executar o seguinte comando sobre o projeto

mvn eclipse:eclipse -Dwtpversion=1.0

Ele vai gerar o projeto do eclipse colocando o jar nas dependencias, porém não jogará na web-inf\lib por não haver necessidade em desenvolvimento.
Ele só irá colocar no web-inf\lib quando gerar o pacote (dependendo do esquema que vc usar)

Então realmente está confuso, pois depois de empacotado o arquivo é colocado no WEB-INF/lib
Mas o problema é que eu não posso usar a classe SimpleBusiness que está dentro da dependencia
Se eu usá-la no código, o eclipse já diz que não existe e nem deixa empacotar
ele só deixa empacotar essa lib qdo eu não a classe constante nela em nenhuma parte do código

Deve ter algum detalhe que realmente não sei o que pode ser
talvez eu deva colocar algum plugin do maven no pom.xml???

Então se você executar o comando que eu te passei o maven vai gerar o projeto do eclipse com as libs lá dentro

entendi cara,
então assim deve ficar legal

é que pensei que fazendo um Run as/build ou install ou um Maven/update dependencies ele já faria isso
sinal que esse plugin do eclipse não faz tudo então

vou testar isso hoje a noite então, depois falo no que deu

abraços

Você deve estar falando do plugin de maven para o eclipse, bom ai não sei como ele funciona nunca usei, e te digo mais, acho que não é necessário mesmo.

Cara, deu certo… agora eu consigo programar com a classe do projeto da dependencia
mas está me gerando outro erro
toda vez que rodo o comando mvn eclipse:eclipse -Dwtpversion=1.0
aparece o erro no projeto:
Java compiler level does not match the version of the installed Java project facet.

Daí eu altero o Java Facets pra 6.0 mas qdo rodo esse comando, volta pra 1.4 e fica com erro

até mais

tenta por isso no seu codigo:

&lt;plugin&gt; &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt; &lt;artifactId&gt;maven-compiler-plugin&lt;/artifactId&gt; &lt;version&gt;2.0.2&lt;/version&gt; &lt;configuration&gt; &lt;source&gt;1.6&lt;/source&gt; &lt;target&gt;1.6&lt;/target&gt; &lt;/configuration&gt; &lt;/plugin&gt;

é cara, deu certo =]
preciso ler depois sobre esse plugin
mas presumo que diz qual a versão do java que deve usar para compilar o projeto, certo?

valeeu