2014-04-25 5 views
5

Je suis en train de construire mon projet java hibernate avec maven. Mais quand j'essaye de faire ceci, il semble qu'il y ait une dépendance non disponible?maven manquant dépendance jta-1.0.1b

Je cette pom.xml maintenant dans mon projet:

<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>net.viralpatel.hibernate</groupId> 
    <artifactId>HibernateHelloWorldXML</artifactId> 
    <packaging>jar</packaging> 
    <version>1.0-SNAPSHOT</version> 
    <name>HibernateHelloWorldXML</name> 
    <url>http://maven.apache.org</url> 
    <dependencies> 
    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>ejb3-persistence</artifactId> 
     <version>1.0.1.GA</version> 
    </dependency> 
    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-annotations</artifactId> 
     <version>3.3.1.GA</version> 
    </dependency> 
    <dependency> 
     <groupId>mysql</groupId> 
     <artifactId>mysql-connector-java</artifactId> 
     <version>5.1.10</version> 
    </dependency> 
    </dependencies> 
</project> 

Lorsque je tente de construire avec mvn je reçois cette erreur:

[WARNING] An error occurred during dependency resolution. 
    Failed to retrieve javax.transaction:jta-1.0.1B 
Caused by: Failure to find javax.transaction:jta:jar:1.0.1B in http://repo.maven.apache.org/maven2 was cached in the local repository, resolution will 
not be reattempted until the update interval of central has elapsed or updates are forced 

Try downloading the file manually from: 
    http://java.sun.com/products/jta 

Then, install it using the command: 
    mvn install:install-file -DgroupId=javax.transaction -DartifactId=jta -Dversion=1.0.1B -Dpackaging=jar -Dfile=/path/to/file 

Alternatively, if you host your own repository you can deploy the file there: 
    mvn deploy:deploy-file -DgroupId=javax.transaction -DartifactId=jta -Dversion=1.0.1B -Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -Drepository 
Id=[id] 

Path to dependency: 
     1) net.viralpatel.hibernate:HibernateHelloWorldXML:jar:1.0-SNAPSHOT 
     2) org.hibernate:hibernate-annotations:jar:3.3.1.GA 
     3) org.hibernate:hibernate:jar:3.2.6.ga 
     4) javax.transaction:jta:jar:1.0.1B 


    javax.transaction:jta:jar:1.0.1B 

from the specified remote repositories: 
    central (http://repo.maven.apache.org/maven2, releases=true, snapshots=false) 

J'ai cherché pour cette erreur et a trouvé un Beaucoup de gens qui ont dû changer leur version de dépendance hibernate-core dans leur fichier pom.xml mais il semble que je n'ai pas de hibernate-core, alors comment puis-je résoudre ce problème?

+0

duplication possible de [Artefact javax.transaction.jta manquant] (http://stackoverflow.com/questions/9003298/missing-javax-transaction-jta-artifact) –

Répondre

9
<dependency> 
<groupId>org.hibernate</groupId> 
<artifactId>hibernate</artifactId> 
<version>3.3.2.ga</version> 
</dependency> 

il a une dépendance recommandée pour JTA 1.1.

OU

Vous pouvez ajouter "http://download.java.net/maven/2" comme nouveau référentiel dans pom.xml ou settings.xml

<repository> 
     <id>java.net.m2repo</id> 
     <name>java.net Maven 2 Repository</name> 
     <url>http://download.java.net/maven/2/</url> 
     <layout>default</layout> 
    </repository> 

Pour toute bibliothèque JEE fourni par Sun ou Oracle .. Ajouter ci-dessous

dépôt
<repositories> 
    <repository> 
     <id>GlassFish</id> 
     <name>GlassFish Maven Repository</name> 
     <url>http://download.java.net/maven/glassfish/</url> 
    </repository> 
    <repository> 
     <id>java.net.m1repo</id> 
     <name>java.net Maven 1 Repository</name> 
     <url>http://download.java.net/maven/1/</url> 
     <layout>legacy</layout> 
    </repository> 
    <repository> 
     <id>java.net.m2repo</id> 
     <name>java.net Maven 2 Repository</name> 
     <url>http://download.java.net/maven/2/</url> 
     <layout>default</layout> 
    </repository> 
</repositories> 
+0

Cela ne fonctionne pas pour moi. Je ne pense pas que ce soit une bonne idée de changer la version d'Hibernate. Comme la version de Jta est la cause du problème, j'ai changé la version de Jta puis son fonctionnement maintenant. –

7

J'ai le même problème et j'ai téléchargé le fichier jta-1.0.1B.jar manuellement à partir de http://www.java2s.com/Code/Jar/j/Downloadjta101Bjar.htm

Im utilisant Netbeans7.3. J'ai développé le dossier dépendances dans le projet et trouvé le jta-1.0.1B.jar avec une petite icône jaune (signifiant pour l'erreur). Ensuite, je clique avec le bouton droit de la souris et utilise l'option "Installer manuellement l'artefact" et pointe vers l'emplacement du fichier jta-1.0.1B.jar. Résolu.

+2

Cela a fonctionné pour moi dans Eclipse. J'ai dû mettre manuellement le pot dans mon dépôt Maven local à C: \ Users \ Home \ .m2 \ repository \ javax \ transaction \ jta \ 1.0.1B – Eric

+0

Cela a également fonctionné pour moi, grâce à Eric aussi pour spécifier le chemin exact que je besoin de le mettre, cela m'a vraiment sauvé du temps! –

-1

S'il vous plaît ajouter ci-dessous repo pom.xml -

<repositories> 
    <repository> 
     <id>maven2-repository.dev.java.net</id> 
     <name>Java.net Repository for Maven</name> 
     <url>http://download.java.net/maven/2/ 
     </url> 
     <layout>default</layout> 
     <snapshots> 
      <enabled>false</enabled> 
     </snapshots> 
     <releases> 
      <enabled>true</enabled> 
     </releases> 
    </repository> 
</repositories> 
1

Étape: 1 J'ai le même problème et j'ai téléchargé le fichier JTA-1.0.1B.jar manuellement à partir http://www.java2s.com/Code/Jar/j/Downloadjta101Bjar.htm et conservés dans le lecteur F .

Étape 2 ci-dessous couru la commande mvn install: install-fichier -Dfile = F: \ JTA-1.0.1B.jar -DgroupId = javax.transaction -DartifactId = JTA -Dversion = 1.0.1b -Dpackaging = jar