web-dev-qa-db-fra.com

Oracle JDBC ojdbc6 Jar en tant que dépendance Maven

Je n'arrive pas à convaincre Maven de regrouper le fichier ojdbc6.jar dans le fichier war de mon projet. Je le fais fonctionner dans le fichier POM lorsque je spécifie une dépendance directement pour les outils Hibernate. Mais il ne sera pas intégré au fichier war du projet et mon projet ne pourra donc pas être exécuté sur Tomcat.

J'ai essayé toutes les solutions que je peux trouver sur le net, y compris celles spécifiées pour cette question ici:

Rechercher le pilote JDBC Oracle dans le référentiel Maven

Plus récemment, j'ai fait ce qui suit:

  1. Télécharger le fichier jar sur ma machine

  2. Exécutez la commande suivante pour installer le fichier jar dans mon référentiel local:

    mvn install:install-file -DgroupId=com.Oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=ojdbc6.jar -DgeneratePom=true
    

    (J'ai aussi essayé toutes sortes de variantes de cette commande.)

  3. Enfin, je mets la dépendance dans mon fichier pom:

    <dependency>
        <groupId>com.Oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.3</version>
    </dependency>
    
  4. Je lance une construction propre, mais elle échoue:

    mvn -U clean package
    
    [INFO] Scanning for projects...
    [INFO]                                                                         
    [INFO] ------------------------------------------------------------------------
    [INFO] Building jazztwo 0.0.1
    [INFO] ------------------------------------------------------------------------
    Downloading: http://repo1.maven.org/maven2/com/Oracle/ojdbc6/11.2.0.3/ojdbc6-11.2.0.3.jar
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 0.700s
    [INFO] Finished at: Tue Mar 27 15:06:14 PDT 2012
    [INFO] Final Memory: 3M/81M
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal on project jazztwo: Could not resolve dependencies for project edu.berkeley:jazztwo:war:0.0.1: Could not find artifact com.Oracle:ojdbc6:jar:11.2.0.3 in central (http://repo1.maven.org/maven2) -> [Help 1]
    

Pourquoi ça ne marche pas? Je suis prêt à lancer des pièces informatiques coûteuses à travers la pièce. Cela a perdu beaucoup de temps. (Merci Oracle. Combien avons-nous déjà payé?) 

Est-ce parce que je suis sur un Mac, peut-être?

86
Marvo

La réponse correcte a été fournie par Raghuram dans la section commentaires de ma question initiale.

Pour une raison quelconque, pointer "installer mvn" sur un chemin complet du fichier physique ojdbc6.jar ne fonctionnait pas pour moi. (Ou je l'ai constamment bafouillé lors de l'exécution de la commande, mais aucune erreur n'a été générée.)

cd-ing dans le répertoire où je garde ojdb6.jar et exécuter la commande à partir de là a fonctionné la première fois.

Si Raghuram souhaite répondre à cette question, je l'accepterai à la place. Merci tout le monde!

22
Marvo

Il est préférable d’ajouter un nouveau référentiel Maven (en utilisant de préférence votre propre artificiel) dans votre projet au lieu de l’installer dans votre référentiel local.

Syntaxe Maven:

<dependency>
    <groupId>com.Oracle</groupId>
    <artifactId>ojdbc6</artifactId>
    <version>11.2.0.3</version>
</dependency>
... 
<repositories>
    <repository>
      <id>codelds</id>
      <url>https://code.lds.org/nexus/content/groups/main-repo</url>
    </repository>
  </repositories>

Exemple Grails: 

mavenRepo "https://code.lds.org/nexus/content/groups/main-repo"
build 'com.Oracle:ojdbc6:11.2.0.3'
123

Pour quiconque lisant ce post à l'avenir, vous n'avez pas besoin de vous connecter au répertoire où se trouve le fichier jar. Voici ce que tu dois faire -

Allez dans le dossier de votre projet à partir duquel vous pouvez exécuter les commandes maven (lorsque vous faites un ls -ltr dans ce dossier, vous devriez voir pom.xml)

Faites ceci -

mvn install:install-file -DgroupId=com.Oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=<Path where the jar is, example downloads>/ojdbc6.jar -DgeneratePom=true

Une fois que cela est fait, vous pouvez ajouter la dépendance dans votre pom.xml, quelque chose comme ça -

    <dependency>
        <groupId>com.Oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.3</version>
    </dependency>
35
rickygrimes

E:\WORK\EclipseL_Work\ro>mvn install:install-file -Dfile=C:\Users\xxxx\Downloa ds\lib\ojdbc6.jar -DgroupId=com.Oracle -DartifactId=ojdbc6 -Dversion=11.2.0 -Dpackaging=jar

pour résoudre le problème Oracle JAR avec l'application Spring,

Oracle JDBC ojdbc6 Jar en tant que dépendance Maven

<dependency> <groupId>com.Oracle</groupId> <artifactId>ojdbc6</artifactId> <version>11.2.0</version> </dependency>

5
Sushil Gulhane

Tout d’abord, vous devez télécharger le fichier jar spécifique à partir du site Oracle (ojdbc.jar version 11.2.0.3). 

si vous le téléchargez dans C:\dossier

accédez à ce répertoire dans l'invite cmd et indiquez la commande ci-dessous. Il installera la dépendance. Vous pourrez ensuite construire votre projet.

mvn install:install-file -DgroupId=com.Oracle -DartifactId=ojdbc6 -Dpackaging=jar -Dversion=11.2.0.4.0 -Dfile=ojdbc6.jar -DgeneratePom=true
5
shermi

Après avoir exécuté

mvn install:install-file -DgroupId=com.Oracle -DartifactId=ojdbc6 -Dversion=11.2.0.3 -Dpackaging=jar -Dfile=ojdbc6.jar -DgeneratePom=true

vérifiez votre dossier de référentiel .m2 (/com/Oracle/ojdbc6/11.2.0.3) pour voir si ojdbc6.jar existe. Sinon, vérifiez les paramètres de votre référentiel Maven sous $ M2_HOME/conf/settings.xml

2
Jayen Chondigara

La configuration ci-dessous a fonctionné pour moi. Reportez-vous à ce link pour plus de détails.

<dependency>
 <groupId>com.Oracle.jdbc</groupId>
 <artifactId>ojdbc7</artifactId>
 <version>12.1.0.2</version>
</dependency>
2
Barani r

J'ai suivi la commande ci-dessous cela a fonctionné:

mvn install:install-file -Dfile=E:\Java\Spring\ojdbc14-10.2.0.4.0.jar\ojdbc14-10.2.0.4.0.jar -DgroupId=com.Oracle -DartifactId=ojdbc14 -Dversion=10.2.0.4.0 -Dpackaging=jar

Après l’installation, vérifiez que le fichier jar est correctement installé sur votre M2_repo.

1
kuser699

Ajouter la dépendance suivante dans pom.xml

<dependency>
    <groupId>com.Oracle</groupId>
    <artifactId>Oracle</artifactId>
    <version>10.2.0.2.0</version>
</dependency>
0
Kiran P Fegade