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

292

Je veux ajouter le pilote oracle jdbc à mon projet en tant que dépendance (portée d'exécution) - ojdbc14. Dans le site MVNrepository, la dépendance à mettre dans le POM est:

<dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc14</artifactId>
    <version>10.2.0.3.0</version>
</dependency>

bien sûr, cela ne fonctionne pas car il ne se trouve pas dans le référentiel central utilisé par maven. 2 questions:

  1. Comment trouver un référentiel (le cas échéant) contenant cet artefact?

  2. Comment l'ajouter pour que Maven l'utilise?

rperez
la source
1
ojdbc6 dans le référentiel public maven: stackoverflow.com/questions/9898499/…
Vadzim

Réponses:

412

Comment trouver un référentiel (le cas échéant) contenant cet artefact?

Malheureusement, en raison de la licence binaire, il n'y a pas de référentiel public avec Oracle Driver JAR. Cela se produit avec de nombreuses dépendances mais ce n'est pas la faute de Maven. Si vous trouvez un référentiel public contenant le fichier JAR, vous pouvez être sûr qu'il est illégal.

Comment l'ajouter pour que Maven l'utilise?

Certains fichiers JAR qui ne peuvent pas être ajoutés pour des raisons de licence ont une entrée pom dans le référentiel Maven Central . Il suffit de le vérifier, il contient les informations Maven préférées du vendeur:

<groupId>com.oracle</groupId>
<artifactId>ojdbc14</artifactId>
<version>10.2.0.3.0</version>

... et l'URL pour télécharger le fichier qui dans ce cas est http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html .

Une fois que vous avez téléchargé le fichier JAR, ajoutez-le simplement à votre référentiel informatique avec (notez que j'ai extrait groupId, artifactId et la version du POM):

mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc14 \
     -Dversion=10.2.0.3.0 -Dpackaging=jar -Dfile=ojdbc.jar -DgeneratePom=true

Le dernier paramètre pour générer un POM vous évitera les avertissements pom.xml

Si votre équipe dispose d'un référentiel Maven local, ce guide peut être utile pour y télécharger le fichier JAR.

Victor Hugo
la source
@Victor - où puis-je trouver ces lignes? dans settings.xml?
Dejell
1
Ce ne sont pas des lignes dans settings.xml mais une commande, une fois que vous avez le JAR, cette commande l'ajoutera à votre référentiel local
victor hugo
15
Pour OJDBC6: 1. mvn install: install-file -DgroupId = com.oracle -DartifactId = ojdbc6 -Dversion = 11.2.0.3 -Dpackaging = jar -Dfile = ojdbc6.jar -DgeneratePom = true 2. Ajoutez ceci à pom.xml: <dependency> <groupId> com.oracle </groupId> <artifactId> ojdbc6 </artifactId> <version> 11.2.0.3 </version> </dependency>
oskarae
11
Je me demande pourquoi Oracle est si laid qu'il ne se soucie pas de tous les jugements publics qu'il a. C'est mauvais même dans ces petites choses comme la disponibilité publique de leurs propres bibliothèques GRATUITES.
Askar Kalykov
7
@AmanicA Selon stackoverflow.com/a/27943380/7677308 , Oracle héberge désormais un tel référentiel
SilverNak
51

Pour une raison quelconque, je n'ai pu obtenir aucune des solutions ci-dessus pour travailler. (Je ne peux toujours pas.)

Ce que j'ai fait à la place, c'était d'inclure le pot dans mon projet (blech) puis de créer une dépendance "système" pour celui-ci qui indique le chemin vers le pot. Ce n'est probablement pas la bonne façon de le faire, mais cela fonctionne. Et cela élimine le besoin pour les autres développeurs de l'équipe (ou le gars qui configure le serveur de build) de mettre le pot dans leurs référentiels locaux.

METTRE À JOUR : Cette solution fonctionne pour moi lorsque j'exécute Hibernate Tools. Cependant, cela ne semble PAS fonctionner pour la construction du fichier WAR. Il n'inclut pas le fichier ojdbc6.jar dans le fichier WAR cible.

1) Créez un répertoire appelé "lib" à la racine de votre projet.

2) Copiez-y le fichier ojdbc6.jar (quel que soit le nom du pot.)

3) Créez une dépendance qui ressemble à ceci:

<dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc</artifactId>
    <version>14</version>
    <scope>system</scope>
    <systemPath>${basedir}/lib/ojdbc6.jar</systemPath> <!-- must match file name -->
</dependency>

Laid, mais ça marche pour moi.

Pour inclure les fichiers dans le fichier war, ajoutez ce qui suit à votre pom

<build>
    <finalName>MyAppName</finalName>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <webResources>
                    <resource>
                        <directory>${basedir}/src/main/java</directory>
                        <targetPath>WEB-INF/classes</targetPath>
                        <includes>
                            <include>**/*.properties</include>
                            <include>**/*.xml</include>
                            <include>**/*.css</include>
                            <include>**/*.html</include>
                        </includes>
                    </resource>
                    <resource>
                        <directory>${basedir}/lib</directory>
                        <targetPath>WEB-INF/lib</targetPath>
                        <includes>
                            <include>**/*.jar</include>
                        </includes>
                    </resource>
                </webResources>
            </configuration>
        </plugin>

        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
    </plugins>
</build>
Marvo
la source
8
J'aime réellement cette solution car elle ne nécessite pas de configuration de Nexus, il n'y a généralement que 1 ou 2 pots comme celui-ci dans un projet, et cela simplifie la configuration des autres développeurs sur le projet car ils n'ont pas à mettre à jour leur env .m2 local . (oracle étant le premier candidat pour cela). De plus, si vous mettez à jour votre référentiel source avec un nouveau pot Oracle, tous les développeurs l'obtiendront au prochain pull.
Q Boiler
ajouté des informations sur la façon d'ajouter les fichiers jar au fichier WAR
ojblass
1
Cela a fonctionné pour moi - codingcraftsman.wordpress.com/2015/04/20/…
Ashley Frieze
1
@Marvo, j'ai essayé de nombreuses solutions et c'était la meilleure, merci beaucoup
Mahmoud Saleh
35

Le pilote Oracle JDBC est désormais disponible dans le référentiel Oracle Maven (pas dans Central).

<dependency>
    <groupId>com.oracle.jdbc</groupId>
    <artifactId>ojdbc7</artifactId>
    <version>12.1.0.2</version>
</dependency>

Le référentiel Oracle Maven nécessite un enregistrement d'utilisateur. Les instructions se trouvent dans:

https://blogs.oracle.com/dev2dev/get-oracle-jdbc-drivers-and-ucp-from-oracle-maven-repository-without-ides

Mise à jour 2019-10-03

J'ai remarqué que Spring Boot utilise maintenant le pilote Oracle JDBC de Maven Central .

<dependency>
    <groupId>com.oracle.ojdbc</groupId>
    <artifactId>ojdbc10</artifactId>
    <version>19.3.0.0</version>
</dependency>

Pour les utilisateurs Gradle, utilisez:

implementation 'com.oracle.ojdbc:ojdbc10:19.3.0.0'

Il n'est pas nécessaire d'enregistrer l'utilisateur.

Mise à jour 2020-03-02

Oracle publie désormais les pilotes sous l'ID de groupe com.oracle.database. Voir la réponse d'Anthony Accioly pour plus d'informations. Merci Anthony.

Pilote JDBC Oracle compatible avec JDK6, JDK7 et JDK8

<dependency>
  <groupId>com.oracle.database.jdbc</groupId>
  <artifactId>ojdbc6</artifactId>
  <version>11.2.0.4</version>
</dependency>

Pilote JDBC Oracle compatible avec JDK8, JDK9 et JDK11

<dependency>
  <groupId>com.oracle.database.jdbc</groupId>
  <artifactId>ojdbc8</artifactId>
  <version>19.3.0.0</version>
</dependency>

Pilote JDBC Oracle compatible avec JDK10 et JDK11

<dependency>
  <groupId>com.oracle.database.jdbc</groupId>
  <artifactId>ojdbc10</artifactId>
  <version>19.3.0.0</version>
</dependency>
Bienvenido David
la source
cela devrait être préféré.
Ashish
30

Téléchargez le pot et placez-le dans votre projet src/lib. Vous pouvez maintenant utiliser le plugin d'installation maven.

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-install-plugin</artifactId>
    <version>2.3.1</version>
    <executions>
        <execution>
            <id>install-oracle-jdbc</id>
            <goals>
                <goal>install-file</goal>
            </goals>
            <phase>clean</phase>
            <configuration>
                <groupId>com.oracle</groupId>
                <artifactId>ojdbc6</artifactId>
                <version>11.2.0</version>
                <packaging>jar</packaging>
                <generatePom>true</generatePom>
                <createChecksum>true</createChecksum>
                <file>${project.basedir}/src/lib/ojdbc6.jar</file>
            </configuration>
        </execution>
    </executions>
</plugin>

Vous n'avez maintenant qu'à exécuter mvn cleanune seule fois et la bibliothèque oracle est installée dans votre référentiel maven local.

Peter Enis
la source
9
alternative très utile!
Rakesh Waghela
22

Oracle expose maintenant un référentiel maven sur maven.oracle.com Cependant, vous devez être authentifié.

Voir https://blogs.oracle.com/WebLogicServer/entry/weblogic_server_and_the_oracle

Selon les commentaires du blog, le pilote ojdbc devrait être disponible aux coordonnées suivantes:

<groupId>com.oracle.weblogic</groupId>
 <artifactId>ojdbc7</artifactId>
 <version>12.1.3-0-0</version>
 <packaging>jar</packaging>
Sébastien
la source
7
Cela fonctionne. C'est un peu compliqué. Vous devez vous assurer d'obtenir le bon artefact, créer un compte Oracle, ajouter quelques éléments à settings.xml et à votre fichier pom.xml et ajouter un nom d'utilisateur et un mot de passe pour ce compte à settings.xml. Oracle doit corriger sa licence car il s'agit toujours d'un PITA.
ggb667
12
Exiger une authentification pour obtenir des artefacts maven semble ridicule.
Rafael Soares - tuelho
3
Si, pour une raison quelconque, vous devez utiliser ojdbc6 (c'est-à-dire que vous êtes bloqué sur Java 6), changez l'artefactId en ojdbc6 et changez la version en 12.1.2-0-0.
dcsohl
J'essaie de trouver la version 11g (11.2.0.4) pour java 6 ... quelqu'un a-t-il trouvé?
jpfreire
2
Mise à jour : Cloué: pour les pilotes jdbc plus anciens, vous devez également modifier groupId: mvn org.apache.maven.plugins: maven-dependency-plugin: 2.1: get -DrepoUrl = maven.oracle.com -Dartifact = com.oracle.jdbc : ojdbc6: 11.2.0.4
jpfreire
17

Essayez avec:

<repositories>
    <!-- Repository for ORACLE ojdbc6. -->
    <repository>
        <id>codelds</id>
        <url>https://code.lds.org/nexus/content/groups/main-repo</url>
    </repository>
</repositories>
<dependencies> 
    <dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.3</version>
    </dependency>
</dependencies> 
recherche9x
la source
14
Sauf qu'il s'agit d'une violation de la licence Oracle.
Ben L.
3
Violence de la licence, mais fonctionne. Je l'utilise à des fins pédagogiques (pas en production). Il contient également le pilote 12c <dependency> <groupId> com.oracle </groupId> <artifactId> ojdbc7 </artifactId> <version> 12.1.0.2 </version> </dependency>
Svetlin Nakov
4
En plus du problème de licence, vous ne devez pas ajouter de référentiels inconnus dans votre pom . Cela présente un risque pour la sécurité et pourrait également menacer votre build. Quelle confiance pouvez-vous accorder à un référentiel de l'Église de Jésus-Christ des Saints des Derniers Jours ? Quelles garanties offrent-ils que le référentiel est fiable, sûr et sécurisé, et qu'ils ne s'en mêleront pas? Que se passe-t-il s'ils sont piratés et publient une version malveillante du pilote ojdbc ou toute autre de vos dépendances?
Didier L
14

1. Comment puis-je trouver un référentiel (le cas échéant) contenant cet artefact?

Comme DavidS a commenté la ligne que j'ai citée au moment où j'ai répondu n'est plus présente dans le contrat de licence OTN actuel (au moment où j'écris maintenant) que j'ai lié. Considérez cette réponse uniquement pour les anciennes versions de l'artefact, comme la 10.2.0.3.0 et similaires.

Tous les pilotes JDBC Oracle Database sont distribués sous le contrat de licence OTN .

Si vous lisez le contrat de licence OTN, vous trouvez cette durée de licence:

Vous ne pouvez pas:
...
- distribuer les programmes sauf s'ils sont accompagnés de vos candidatures;
...

c'est pourquoi vous ne pouvez pas trouver le pot du pilote dans un référentiel Maven public, car il serait distribué seul, et si cela se produisait, ce serait une violation de licence.

Ajout de la dépendance:

<dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc14</artifactId>
    <version>10.2.0.3.0</version>
</dependency>

(ou toute version ultérieure) font des téléchargements Maven le ojdbc14-10.2.0.3.0.pomseul, et dans ce pom vous pouvez lire:

...
<licenses>
    <license>
        <name>Oracle Technology Network Development and Distribution License Terms</name>
        <url>http://www.oracle.com/technology/software/htdocs/distlic.html</url>
    </license>
</licenses>
...

qui vous informe sur la licence OTN.

2. Comment l'ajouter pour que Maven l'utilise?

Afin de faire fonctionner la dépendance ci-dessus, je suis d'accord avec victor hugo qui vous proposait ici d'installer manuellement le pot dans votre référentiel Maven local (le .m2répertoire) en exécutant:

mvn install:install-file -Dfile={Path_to_your_ojdbc.jar} -DgroupId=com.oracle 
-DartifactId=ojdbc -Dversion=10.2.0.3.0 -Dpackaging=jar

mais je veux ajouter que le terme de licence ci - dessus ne limite pas seulement où vous ne pouvez pas trouver le pot JDBC, mais il limite aussi où vous l'installez!

En fait, votre référentiel Maven local doit être privé et non partagé car s'il était partagé, ce serait une sorte de distribution dans laquelle le pot est distribué seul, même si à un petit groupe de personnes dans votre réseau local, et cela représente un Violation du contrat de licence OTN .

De plus, je pense que vous devriez éviter d'installer le pot JDBC dans le gestionnaire de référentiel de votre entreprise (comme Artifactory ou Nexus ) comme un artefact unique, car s'il était installé, il serait toujours distribué seul, même aux personnes de votre organisation uniquement, et cela représente une violation du contrat de licence OTN .

taringamberini
la source
1
Notamment, la ligne que vous citez n'est plus présente dans l'accord que vous avez lié. La ligne la plus proche qui reste est, je pense, "Nous vous accordons un droit non exclusif et non transférable de copier et de distribuer des programmes et de la documentation de programmes non modifiés dans le cadre de et inclus dans votre application qui est destiné à interagir avec le produit associé, le cas échéant, à condition que Vous ne facturez pas à vos utilisateurs finaux des frais supplémentaires pour l'utilisation des programmes ", ce qui est, comme vous pouvez le voir, plus concerné par le paiement que par les spécificités de la redistribution.
DavidS
13

Vous pouvez utiliser Nexus pour gérer les dépendances tierces ainsi que les dépendances dans les référentiels maven standard.

Michael Munsey
la source
4
Comment Nexus pourrait-il aider dans ce cas? D'où va-t-il télécharger l'artefact?
ziggy
4
La réponse est incomplète, mais je pense que @Michael Munsey dit de créer un référentiel interne / d'entreprise à télécharger.
Randolph
Oui. Configurez Nexus, puis téléchargez manuellement les fichiers jars et placez-les dans Nexus afin que les versions successives de maven puissent les extraire de votre instance Nexus.
Michael Munsey
1
@MichaelMunsey De manière générale, suggérer un gestionnaire de référentiel comme Artifactory ou Nexus serait une bonne réponse, mais dans le cas spécifique des pilotes de base de données Oracle JDBC, il n'est pas bon car, même s'il fait fonctionner les choses, il vous expose malheureusement à problèmes dus à cette violation de la durée de la licence .
taringamberini
6

Jusqu'à présent, il n'est pas possible d'utiliser les référentiels maven. J'utilise ivy comme outil de gestion des dépendances, mais j'utilise également les référentiels ibiblio de maven2. Et cela fonctionne pour le lierre:

<dependency org="oracle" name="ojdbc14" rev="10.2.0.2" conf="*->default"/>

La dépendance de Maven2 pourrait être quelque chose comme ça:

<dependency> 
    <groupId>oracle</groupId> 
    <artifactId>ojdbc14</artifactId> 
    <version>10.2.0.2</version> 
</dependency>

Notez que je définis http://download.java.net/maven/2/ et http://mirrors.ibiblio.org/pub/mirrors/maven/mule/dependencies/maven2/ [organisation] / [module] / [ revision] / [artifact] - [revision]. [ext] en tant que dépôt maven2 externe sur mes paramètres de lierre.

tugcem
la source
1
C'est une excellente réponse - vous pouvez simplement ajouter le repo: mirrors.ibiblio.org/pub/mirrors/maven/mule/dependencies/maven2 à votre pom.xml pour que cela fonctionne.
Grouchal
7
Cela pourrait fonctionner, mais est-ce légal? Comme expliqué dans l'une des autres réponses ici, Oracle n'autorise la distribution du pilote par personne d'autre que par eux et ils ne fournissent pas de référentiel Maven. Si vous utilisez cette solution, le pilote peut parfois être supprimé du référentiel lorsque vous vous y attendez le moins.
LS
1
@Grouchal Cette réponse fait fonctionner les choses mais, malheureusement, vous expose à des problèmes en raison de cette violation de la durée de la licence .
taringamberini
@Grouchal ... il n'y a pas de http://maven.ibiblio.org/maven/oracleni http://maven.ibiblio.org/maven/com.oracle.
david
6

À ce jour (27 février 2020), Oracle a annoncé qu'il avait publié toutes les bibliothèques client JDBC de la version 11.2.0.4 (par exemple ojdbc6) à 19.3.0 (par exemple ojdbc10) sur Maven Central sous l'ID de groupe com.oracle.database :

Exemple:

<dependency>
  <groupId>com.oracle.database.jdbc</groupId>
  <artifactId>ojdbc10</artifactId>
  <version>19.3.0.0</version>
</dependency>
Anthony Accioly
la source
4

Les pilotes Oracle JDBC sont désormais disponibles dans Maven Central . Voici le lien:

Pilotes JDBC Oracle - Maven Central

Article des développeurs Oracle annonçant la disponibilité des pilotes Oracle JDBC dans Maven Central:

Oracle annonce - Les pilotes Oracle JDBC disponibles dans Maven Central

Exemple:

<!-- https://mvnrepository.com/artifact/com.oracle.jdbc/ojdbc10 -->
<dependency>
   <groupId>com.oracle.database.jdbc</groupId>
   <artifactId>ojdbc10</artifactId>
   <version>19.3.0.0</version>
</dependency>
Alboz
la source
3

Bonnes nouvelles tout le monde! Enfin, nous pouvons utiliser le référentiel officiel d'Oracle: https://blogs.oracle.com/dev2dev/get-oracle-jdbc-drivers-and-ucp-from-oracle-maven-repository-without-ides

Vladimir Chervanev
la source
4
Bonne nouvelle, mais les paramètres de sécurité sont trop complexes. Il est plus facile de télécharger le JAR dans le dossier "lib" comme nous l'avons fait en 1999.
Svetlin Nakov
Ça marche! La configuration de la sécurité n'est pas si complexe et elle est bien documentée, vous ne devez le faire qu'une seule fois. Le fait que vous deviez coder en dur votre mot de passe (crypté) quelque part est certainement une douleur, je remets également en question la décision d'Oracle de "protéger" l'accès à leur référentiel "public", cela n'a strictement aucun sens du point de vue du développeur.
Pierluigi Vernetto,
2

Certains produits Oracle prennent en charge la publication d'artefacts maven dans un référentiel local. Les produits ont un répertoire plugin / maven qui contient des descriptions où trouver ces artefacts et où les stocker. Il existe un plugin d'Oracle qui fera le téléchargement.

Voir: http://docs.oracle.com/middleware/1212/core/MAVEN/config_maven.htm

L'un des produits qui peut expédier OJDBC de cette manière est le WLS, il utilise cependant des coordonnées assez étranges:

<groupId>com.oracle.weblogic</groupId>
<artifactId>ojdbc6</artifactId>
<version>12.1.2-0-0</version>
eckes
la source
... et pendant ce temps, le dépôt est également accessible au public: blogs.oracle.com/WebLogicServer/entry/…
eckes
1

J'expédie opensource sous LGPLv2 et même après plusieurs conversations par courriel avec Oracle, ils ne savaient pas si j'étais autorisé à expédier leur pilote JDBC binaire avec ma distribution. Le problème était de savoir si ma licence était compatible avec leurs conditions OTN, ils ont donc suggéré que je n'étais pas autorisé à expédier le pilote. Vraisemblablement lié à cette partie

(b) de distribuer les programmes avec les applications que vous avez développées à vos clients à condition que chacun de ces licenciés accepte de concéder des termes de licence conformes aux termes du présent Contrat

Donc, même si vous parvenez à publier le pilote légalement dans votre référentiel maven exclusif / local, il y a toujours une restriction sur ce que vous êtes autorisé à faire avec cet artefact. Il semble absurde que même si j'expédie leur pilote sous forme binaire avec le fichier de licence OTN complet, je ne peux toujours pas l'utiliser et que je doive forcer mes utilisateurs à télécharger manuellement le pilote Oracle et à accéder à mon chemin de bibliothèque avant de pouvoir utiliser mon logiciel.

Craig
la source
0

Il y a un dépôt qui fournit le pot. Dans SBT, ajoutez un résolveur similaire à celui-ci: "Oracle Driver Repo" at " http://dist.codehaus.org/mule/dependencies/maven2 "

et une dépendance: "oracle"% "ojdbc14"% "10.2.0.2"

Vous pouvez faire de même avec maven. pom.xml et jar sont disponibles ( http://dist.codehaus.org/mule/dependencies/maven2/oracle/ojdbc14/10.2.0.2/ ).

yǝsʞǝla
la source
Soyez prudent car ce pom http://dist.codehaus.org/mule/dependencies/maven2/oracle/ojdbc14/10.2.0.2/ojdbc14-10.2.0.2.pom n'a pas de définition de licence, donc je ne pense pas qu'il ait été téléchargé par le propriétaire de l'artefact. Cette réponse fait fonctionner les choses, mais, malheureusement, vous expose à des problèmes en raison de cette violation des conditions de licence .
taringamberini
Downvoter, êtes-vous en colère contre moi ou contre Oracle? :) Veuillez expliquer votre downvote afin que les autres utilisateurs sachent quel est le problème avec cette réponse.
yǝsʞǝla
0

Si vous utilisez Netbeans, passez aux dépendances et installez manuellement l'artefact. Localisez votre fichier .jar téléchargé et c'est fait. une construction propre résoudra tous les problèmes.

Zafrullah Syed
la source
0

Vous pouvez trouver un exemple de projet Github simple pour utiliser un pilote Oracle JDBC sur le projet Maven ici .

Vous pouvez trouver toutes les explications de votre intégration continue + un échantillon et exécuter sur Travis-CI.

DEMO

sgrillon
la source
1
Un lien vers une solution est le bienvenu, mais assurez-vous que votre réponse est utile sans elle: ajoutez du contexte autour du lien afin que vos collègues utilisateurs aient une idée de ce que c'est et pourquoi il est là, puis citez la partie la plus pertinente de la page que vous '' relier à au cas où la page cible n'est pas disponible. Les réponses qui ne sont guère plus qu'un lien peuvent être supprimées.
Samuel Liew
1
Votre profil indique que vous êtes associé au site Web auquel vous vous êtes connecté. Un lien vers quelque chose auquel vous êtes affilié (par exemple, un produit ou un site Web) sans divulguer qu'il vous appartient est considéré comme du spam sur Stack Exchange / Stack Overflow. Voir: Qu'est - ce qui signifie une "bonne" promotion personnelle? , quelques astuces et conseils sur l'autopromotion , Quelle est la définition exacte du "spam" pour Stack Overflow? et ce qui fait du spam .
Samuel Liew
0

Pour la dépendance

<dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc7</artifactId>
    <version>12.1.0.2</version>
</dependency>

Essayer

<repository>
    <id>mvnrepository</id>
    <url>http://nexus.saas.hand-china.com/content/repositories/rdc</url>
</repository>
bosco1
la source
0

Dans mon cas, cela fonctionne pour moi après avoir ajouté cette dépendance de version ci-dessous (10.2.0.4). Après avoir ajouté cette version 10.2.0.3.0, cela ne fonctionne pas car le fichier .jar n'est pas disponible dans le chemin du référentiel.

<groupId>com.oracle</groupId>
<artifactId>ojdbc14</artifactId>
<version>10.2.0.4</version>
anand krish
la source
0

Veuillez essayer ci-dessous:

<dependency>
    <groupId>com.oracle.ojdbc</groupId>
    <artifactId>ojdbc8</artifactId>
    <version>19.3.0.0</version>
</dependency>
Ensoleillé
la source
-3

RESOLU

  • Veuillez effectuer les réglages suivants pour résoudre l'erreur

Ce référentiel doit être activé pour rechercher les dépendances Oracle 10.0.3.0 (ce paramètre doit être effectué dans Buildconfig.groovy grails.project.dependency.resolver = "ivy" // ou ivy

Utilisez également le paramètre suivant pour le téléchargement du pilote Oracle au moment de la compilation

runtime "com.oracle:ojdbc:10.2.0.3.0"

Cela devrait résoudre votre problème pour ne pas trouver le pilote Oracle pour l'application Grails


Makarand
la source