2010-06-10 10 views
16

ho aggiunto il repo JBoss Maven al mio file pom.xml così ...Aggiunta di Hibernate 3.5.x ad un esperto di pom.xml costruire

<repositories> 
     <repository> 
      <id>jboss</id> 
      <url>http://repository.jboss.org/maven2/</url>   
     </repository> 
    </repositories> 

E ho aggiunto Hibernate stesso come questo ...

<dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate</artifactId> 
     <version>3.5.1-Final</version> 
    </dependency> 

Ma quando provo a costruire la mia domanda che vedo questo errore ....

Downloading: http://repository.jboss.org/maven2//org/hibernate/hibernate/3.5.1-Final/hibernate-3.5.1-Final.jar 
[INFO] Unable to find resource 'org.hibernate:hibernate:jar:3.5.1-Final' in repository jboss (http://repository.jboss.org/maven2/) 
Downloading: http://repo1.maven.org/maven2/org/hibernate/hibernate/3.5.1-Final/hibernate-3.5.1-Final.jar 
[INFO] Unable to find resource 'org.hibernate:hibernate:jar:3.5.1-Final' in repository central (http://repo1.maven.org/maven2) 
[INFO] ------------------------------------------------------------------------ 
[ERROR] BUILD ERROR 
[INFO] ------------------------------------------------------------------------ 
[INFO] Failed to resolve artifact. 

Missing: 
---------- 
1) org.hibernate:hibernate:jar:3.5.1-Final 

    Try downloading the file manually from the project website. 

    Then, install it using the command: 
     mvn install:install-file -DgroupId=org.hibernate -DartifactId=hibernate -Dversion=3.5.1-Final -Dpackaging=jar -Dfile=/path/to/file 

    Alternatively, if you host your own repository you can deploy the file there: 
     mvn deploy:deploy-file -DgroupId=org.hibernate -DartifactId=hibernate -Dversion=3.5.1-Final -Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id] 

    Path to dependency: 
    1) stakeholdersupdate:stakeholdersupdate:war:1.0 
    2) org.hibernate:hibernate:jar:3.5.1-Final 

---------- 
1 required artifact is missing. 
+2

Si prega di notare che tutti i futuri artefatti di JBoss non saranno disponibili nel vecchio repository. JBoss si sta trasferendo in una [nuova infrastruttura di repository di maven] (http://community.jboss.org/en/build/blog/2010/04/20/announcement--new-maven-repository-infrastructure). –

risposta

21

Come seanizer accennato, il manufatto è org.hibernate:hibernate:pom:3.5.1-Final un modulo aggregante di tipo pom (aggrega i moduli Hibernate Core). Quindi potresti davvero dipenderlo specificando uno <type>pom</type>. Ma vorrei dichiaro personalmente una dipendenza sul modulo desiderato, ad esempio per Hibernate entità Responsabile:

<dependency> 
    <groupId>org.hibernate</groupId> 
    <artifactId>hibernate-entitymanager</artifactId> 
    <version>3.5.1-Final</version> 
</dependency> 

O per Hibernate Nucleo:

<dependency> 
    <groupId>org.hibernate</groupId> 
    <artifactId>hibernate-core</artifactId> 
    <version>3.5.1-Final</version> 
</dependency> 
+0

ovviamente corretto. Ho appena risposto alla domanda, pur fornendo la risposta a una domanda implicita migliore sarebbe stata la strada da percorrere :-) –

+0

Ah drat, sei già andato lungo 66666! : o) – BalusC

+1

@BalusC: ho preso uno screenshot! > :) –

10

l'artefatto di sospensione è di tipo POM (che significa che è solo una Wrapp er per altri progetti). fare questo:

<dependency> 
    <groupId>org.hibernate</groupId> 
    <artifactId>hibernate</artifactId> 
    <version>3.5.1-Final</version> 
    <type>pom</type> 
</dependency> 

(se si lascia fuori il tipo, Maven cercherà di risolvere l'artefatto come un vaso, che non esiste in questo caso)

+0

+1 per il motivo dell'errore –

3

Questo è come sono riuscito a aggiungere Hibernate e JPA 2 a il mio progetto

. . . 

<repositories> 
    <repository> 
     <id>JBoss</id> 
     <name>The "public-jboss" repository group provides a combined view all JBoss community project artifacts</name> 
     <layout>default</layout> 
     <url>http://repository.jboss.org/nexus/content/groups/public-jboss</url> 
    </repository> 
</repositories> 

<dependencies> 

    . . . 

    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-entitymanager</artifactId> 
     <version>3.5.5-Final</version> 
    </dependency> 

    . . . 

</dependencies> 

. . . 
Problemi correlati