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:
Télécharger le fichier jar sur ma machine
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.)
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>
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?
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!
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'
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>
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>
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
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
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>
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.
Ajouter la dépendance suivante dans pom.xml
<dependency>
<groupId>com.Oracle</groupId>
<artifactId>Oracle</artifactId>
<version>10.2.0.2.0</version>
</dependency>