Znajdź sterownik JDBC Oracle w repozytorium Maven

292

Chcę dodać sterownik jdbc oracle do mojego projektu jako zależność (zasięg działania) - ojdbc14. W witrynie MVNrepository zależność do umieszczenia w POM jest:

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

oczywiście to nie działa, ponieważ nie ma go w centralnym repozytorium używanym przez maven. 2 pytania:

  1. Jak znaleźć repozytorium (jeśli istnieje), które zawiera ten artefakt?

  2. Jak mogę go dodać, aby Maven go używał?

rperez
źródło
1
ojdbc6 w publicznym repozytorium maven: stackoverflow.com/questions/9898499/…
Vadzim

Odpowiedzi:

412

Jak znaleźć repozytorium (jeśli istnieje), które zawiera ten artefakt?

Niestety z powodu licencji binarnej nie ma publicznego repozytorium z JAR Oracle Driver. Dzieje się tak z wieloma zależnościami, ale nie jest to wina Mavena. Jeśli znajdziesz publiczne repozytorium zawierające plik JAR, możesz być pewien, że jest to nielegalne.

Jak mogę go dodać, aby Maven go używał?

Niektóre pliki JAR, których nie można dodać ze względu na licencję, mają wpis pom w repozytorium Maven Central . Po prostu sprawdź, zawiera preferowane przez dostawcę informacje Maven:

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

... oraz adres URL do pobrania pliku, którym w tym przypadku jest http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html .

Po pobraniu pliku JAR po prostu dodaj go do repozytorium komputera za pomocą (uwaga: ściągnąłem groupId, artefactId i wersję z POM):

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

Ostatni parametr do generowania POM pozwoli Ci zaoszczędzić od ostrzeżeń pom.xml

Jeśli Twój zespół ma lokalne repozytorium Maven, ten przewodnik może być pomocny w przesłaniu tam pliku JAR.

Wiktor Hugo
źródło
@Victor - gdzie znajdę te linie? w settings.xml?
Dejell
1
To nie są wiersze w pliku settings.xml, ale polecenie, gdy już będziesz mieć plik JAR, to polecenie doda go do lokalnego repozytorium
victor hugo
15
W przypadku OJDBC6: 1. mvn install: install-file -DgroupId = com.oracle -DartifactId = ojdbc6 -Dversion = 11.2.0.3 -Dpackaging = jar -Dfile = ojdbc6.jar -DgeneratePom = true 2. Dodaj to do pom.xml: <dependency> <groupId> com.oracle </groupId> <artifactId> ojdbc6 </artifactId> <version> 11.2.0.3 </version> </dependency>
oskarae
11
Zastanawiam się, dlaczego Oracle jest tak brzydka, że ​​nie przejmuje się wszystkimi publicznymi osądami, jakie ma. Jest to złe nawet w takich drobiazgach, jak publiczna dostępność własnych DARMOWYCH bibliotek.
Askar Kalykov
7
@AmanicA Według stackoverflow.com/a/27943380/7677308 Oracle obsługuje teraz takie repozytorium
SilverNak
51

Z jakiegokolwiek powodu nie udało mi się uruchomić żadnego z powyższych rozwiązań. (Nadal nie mogę.)

Zamiast tego włączyłem słoik do mojego projektu (blech), a następnie stworzyłem dla niego zależność „systemową”, która wskazuje ścieżkę do słoika. Prawdopodobnie nie jest to właściwy sposób, ale działa. Eliminuje to potrzebę umieszczania słoika w lokalnych repozytoriach przez innych programistów w zespole (lub faceta konfigurującego serwer kompilacji).

AKTUALIZACJA : To rozwiązanie działa dla mnie po uruchomieniu narzędzi hibernacji. Wydaje się jednak, że NIE działa on przy tworzeniu pliku WAR. Nie zawiera pliku ojdbc6.jar w docelowym pliku WAR.

1) Utwórz katalog o nazwie „lib” w katalogu głównym swojego projektu.

2) Skopiuj tam plik ojdbc6.jar (niezależnie od tego, jak nazywa się jar).

3) Utwórz zależność, która wygląda mniej więcej tak:

<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>

Brzydki, ale dla mnie działa.

Aby dołączyć pliki do pliku wojny, dodaj do 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
źródło
8
Naprawdę podoba mi się to rozwiązanie, ponieważ nie wymaga konfigurowania nexusa, zwykle w projekcie jest tylko 1 lub 2 słoiki, a to upraszcza konfigurację innych programistów w projekcie, ponieważ nie muszą aktualizować lokalnego .m2 env . (wyrocznia jest głównym kandydatem do tego). Ponadto, jeśli zaktualizujesz repozytorium źródłowe o nowy słoik wyroczni, wszyscy programiści otrzymają go przy następnym pobieraniu.
Q Kocioł
dodano informacje o tym, jak dodać pliki jar do pliku WAR
ojblass
1
To zadziałało dla mnie - codingcraftsman.wordpress.com/2015/04/20/...
Ashley Frieze
1
@Marvo, wypróbowałem wiele rozwiązań i to było najlepsze, wielkie dzięki
Mahmoud Saleh
34

Sterownik JDBC Oracle jest teraz dostępny w repozytorium Oracle Maven (nie w centralnym).

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

Repozytorium Oracle Maven wymaga rejestracji użytkownika. Instrukcje można znaleźć w:

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

Aktualizacja 03.10.2019

Zauważyłem, że Spring Boot używa teraz sterownika Oracle JDBC ze strony Maven Central .

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

W przypadku użytkowników Gradle użyj:

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

Nie ma potrzeby rejestracji użytkownika.

Aktualizacja 2020-03-02

Oracle publikuje teraz sterowniki pod identyfikatorem grupy com.oracle.database. Aby uzyskać więcej informacji, zobacz odpowiedź Anthony Accioly. Dzięki, Anthony.

Sterownik JDBC Oracle zgodny z JDK6, JDK7 i JDK8

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

Sterownik JDBC Oracle zgodny z JDK8, JDK9 i JDK11

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

Sterownik JDBC Oracle zgodny z JDK10 i JDK11

<dependency>
  <groupId>com.oracle.database.jdbc</groupId>
  <artifactId>ojdbc10</artifactId>
  <version>19.3.0.0</version>
</dependency>
Bienvenido David
źródło
taki powinien być preferowany sposób.
Ashish
30

Pobierz słoik i umieść go w swoim projekcie src/lib. Teraz możesz użyć wtyczki instalatora 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>

Teraz musisz wykonać mvn cleantylko raz, a biblioteka Oracle jest zainstalowana w lokalnym repozytorium maven.

Peter Enis
źródło
9
bardzo przydatna alternatywa!
Rakesh Waghela
22

Oracle ujawnia teraz repozytorium maven na maven.oracle.com Jednak musisz być uwierzytelniony.

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

Zgodnie z komentarzami w blogu sterownik ojdbc powinien być dostępny przy następujących współrzędnych:

<groupId>com.oracle.weblogic</groupId>
 <artifactId>ojdbc7</artifactId>
 <version>12.1.3-0-0</version>
 <packaging>jar</packaging>
Sebastien
źródło
7
To działa. To trochę kłopotliwe. Musisz upewnić się, że otrzymasz właściwy artefakt, utworzyć konto Oracle, dodać kilka rzeczy do pliku settings.xml i pliku pom.xml oraz dodać nazwę użytkownika i hasło do tego konta do pliku settings.xml. Oracle musi naprawić licencje, ponieważ nadal jest to PITA.
ggb667
12
Wymagaj uwierzytelnienia, aby artefakty raju brzmiały absurdalnie.
Rafael Soares - tuelho
3
Jeśli z jakiegoś powodu musisz użyć ojdbc6 (tzn. Utknąłeś w Javie 6), zmień artefactId na ojdbc6 i zmień wersję na 12.1.2-0-0.
dcsohl
Próbuję znaleźć wersję 11g (11.2.0.4) dla java 6 ... czy ktoś ją znalazł?
jpfreire
2
Aktualizacja : Nailed it: w przypadku starszych sterowników jdbc należy również zmienić 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

Spróbuj z:

<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> 
szukanie 9x
źródło
14
Z wyjątkiem tego, że jest to naruszenie licencji Oracle.
Ben L.
3
Przemoc licencji, ale działa. Używam go do celów edukacyjnych (nie w produkcji). Zawiera także sterownik 12c <dependency> <groupId> com.oracle </groupId> <artifactId> ojdbc7 </artifactId> <version> 12.1.0.2 </version> </dependency>
Svetlin Nakov
4
Oprócz problemu z licencją, nie powinieneś dodawać nieznanych repozytoriów do swojej pom . Stanowi to zagrożenie bezpieczeństwa i może również zagrozić kompilacji. Ile zaufania możesz pokładać w repozytorium z Kościoła Jezusa Chrystusa Świętych w Dniach Ostatnich ? Jakie gwarancje zapewniają, że repozytorium jest niezawodne, bezpieczne i że nie będą z nim zadzierać? Co się stanie, jeśli zostaną zhakowane i opublikują złośliwą wersję sterownika ojdbc lub jakąkolwiek inną zależność?
Didier L
14

1. Jak znaleźć repozytorium (jeśli istnieje), które zawiera ten artefakt?

Jak DavidS skomentował wiersz, który zacytowałem w momencie, w którym odpowiedziałem, nie jest już obecny w bieżącej (w chwili, gdy piszę) umowie licencyjnej OTN, którą podłączyłem. Rozważ tę odpowiedź tylko w przypadku starszej wersji artefaktu, jak 10.2.0.3.0 i tym podobne.

Wszystkie sterowniki JDBC bazy danych Oracle są rozpowszechniane na podstawie umowy licencyjnej OTN .

Jeśli czytasz Umowę licencyjną OTN, odnajdujesz ją:

Nie możesz:
...
- rozpowszechniać programów, o ile nie towarzyszą Ci twoje aplikacje;
...

dlatego nie możesz znaleźć słoika sterownika w żadnym publicznym repozytorium Maven, ponieważ byłby dystrybuowany sam, a gdyby tak się stało, byłoby to naruszeniem prawa jazdy.

Dodanie zależności:

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

(lub jakakolwiek późniejsza wersja) sprawiają, że Maven pobiera ojdbc14-10.2.0.3.0.pomjedyne, aw tym pom możesz przeczytać:

...
<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>
...

który informuje Cię o licencji OTN.

2. Jak mogę go dodać, aby Maven go używał?

W celu uczynienia powyższą zależność działa zgadzam się z Victor Hugo którzy sugeruję tutaj , aby ręcznie zainstalować słoik do lokalnego repozytorium Maven (The .m2katalogu) za pomocą polecenia:

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

ale chcę dodać, że powyższy warunek licencyjny nie ogranicza się tylko tam, gdzie nie można znaleźć słoika JDBC, ale ogranicza także miejsce instalacji.

W rzeczywistości Twoje lokalne repozytorium Maven musi być prywatne i nie może być współużytkowane, ponieważ gdyby było współużytkowane, byłby rodzajem dystrybucji, w której słoik jest dystrybuowany sam, nawet jeśli do małej grupy ludzi w sieci lokalnej, a to reprezentuje Naruszenie umowy licencyjnej OTN .

Ponadto uważam, że powinieneś unikać instalowania słoika JDBC w menedżerze repozytorium korporacji (takim jak Artifactory lub Nexus ) jako pojedynczy artefakt, ponieważ jeśli byłby zainstalowany, byłby nadal dystrybuowany sam, nawet jeśli tylko w twojej organizacji, a to reprezentuje naruszenie umowy licencyjnej OTN .

taringamberini
źródło
1
W szczególności cytowany wiersz nie jest już obecny w połączonej umowie. Myślę, że najbliższą linią jest: „Udzielamy Ci niewyłącznego, nieprzenoszalnego prawa do kopiowania i rozpowszechniania niezmodyfikowanych Programów i Dokumentacji Programów w ramach Twojej aplikacji, która ma współpracować z Produktem Powiązanym, o ile taki istnieje, pod warunkiem że Nie obciążasz swoich użytkowników końcowych żadnymi dodatkowymi opłatami za korzystanie z Programów ”, ponieważ, jak widać, bardziej dotyczy to płatności niż specyfiki redystrybucji.
DavidS
13

Możesz używać Nexusa do zarządzania zależnościami stron trzecich, a także zależnościami w standardowych repozytoriach maven.

Michael Munsey
źródło
4
Jak Nexus pomógłby w tym przypadku? Skąd będzie pobierał artefakt?
ziggy
4
Odpowiedź jest niepełna, ale myślę, że @Michael Munsey mówi o utworzeniu wewnętrznego / korporacyjnego repozytorium do pobrania.
Randolph
Tak. Skonfiguruj Nexus, a następnie ręcznie pobierz słoiki i umieść je w Nexusie, aby kolejne kompilacje maven mogły pobrać go z instancji Nexusa.
Michael Munsey,
1
@MichaelMunsey Ogólnie rzecz biorąc sugerowanie menedżera repozytorium, takiego jak Artifactory lub Nexus, byłoby dobrą odpowiedzią, ale w konkretnym przypadku sterowników baz danych Oracle JDBC nie jest dobre, ponieważ nawet jeśli działa, niestety naraża cię na problemy z powodu naruszenia tego terminu licencji .
taringamberini
6

Do tej pory nie można używać repozytoriów maven. Używam bluszczu jako narzędzia do zarządzania zależnościami, ale także używam repozytoriów ibiblio maven2. I to działa na bluszcz:

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

Zależność Maven2 może być taka:

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

Zauważ, że zdefiniowałem http://download.java.net/maven/2/ i http://mirrors.ibiblio.org/pub/mirrors/maven/mule/dependencies/maven2/ [organizacja] / [moduł] / [ wersja] / [artefakt] - [wersja]. [ext] jako zewnętrzne repozytorium maven2 w moich ustawieniach bluszczu.

tugcem
źródło
1
To świetna odpowiedź - możesz po prostu dodać repo: mirrors.ibiblio.org/pub/mirrors/maven/mule/mule/dependencies/maven2 do pom.xml, aby to zadziałało.
Grouchal
7
To może działać, ale czy to jest legalne? Jak wyjaśniono w jednej z pozostałych odpowiedzi tutaj, Oracle nie zezwala na to, aby sterownik był dystrybuowany przez kogokolwiek oprócz nich i nie dostarczają repozytorium Maven. Jeśli skorzystasz z tego rozwiązania, sterownik może zostać kiedyś usunięty z repozytorium, gdy najmniej się tego spodziewasz.
LS
1
@Grouchal Ta odpowiedź sprawia, że ​​wszystko działa, ale niestety narażasz Cię na kłopoty z powodu naruszenia warunków licencji .
taringamberini
@Grouchal ... nie ma http://maven.ibiblio.org/maven/oracleani http://maven.ibiblio.org/maven/com.oracle.
David
6

Na dzień dzisiejszy (27 lutego 2020 r.) Oracle ogłosiło , że opublikowało wszystkie biblioteki klienta JDBC od wersji 11.2.0.4 (np. Ojdbc6) do 19.3.0 (np. Ojdbc10) w Maven Central pod identyfikatorem grupy com.oracle.database :

Przykład:

<dependency>
  <groupId>com.oracle.database.jdbc</groupId>
  <artifactId>ojdbc10</artifactId>
  <version>19.3.0.0</version>
</dependency>
Anthony Accioly
źródło
4

Sterowniki Oracle JDBC są teraz dostępne w Maven Central . Tutaj jest link:

Sterowniki Oracle JDBC - Maven Central

Artykuł dla deweloperów Oracle ogłaszający dostępność sterowników Oracle JDBC w Maven Central:

Oracle ogłasza - sterowniki JDBC Oracle dostępne w Maven Central

Przykład:

<!-- 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
źródło
3

Dobre wieści wszyscy! Wreszcie możemy skorzystać z oficjalnego repozytorium Oracle: https://blogs.oracle.com/dev2dev/get-oracle-jdbc-drivers-and-ucp-from-oracle-maven-repository-without-ides

Vladimir Chervanev
źródło
4
Dobra wiadomość, ale ustawienia zabezpieczeń są zbyt złożone. Łatwiej jest pobrać plik JAR z folderu „lib”, tak jak to zrobiliśmy w 1999 roku.
Svetlin Nakov
to działa! Konfiguracja zabezpieczeń nie jest tak skomplikowana i dobrze udokumentowana, musisz to zrobić tylko raz. Z pewnością fakt, że musisz gdzieś zakodować swoje (zaszyfrowane) hasło, jest uciążliwy, kwestionuję również decyzję Oracle o „ochronie” dostępu do ich „publicznego” repozytorium, z punktu widzenia programisty nie ma to żadnego sensu.
Pierluigi Vernetto
2

Niektóre produkty Oracle obsługują publikowanie artefaktów raju w lokalnym repozytorium. Produkty mają katalog wtyczek / maven, który zawiera opisy, gdzie znaleźć te artefakty i gdzie je przechowywać. Istnieje wtyczka Oracle, która faktycznie wykona przesyłanie.

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

Jednym z produktów, które mogą wysyłać OJDBC w ten sposób, jest WLS, wykorzystuje jednak dość dziwne współrzędne:

<groupId>com.oracle.weblogic</groupId>
<artifactId>ojdbc6</artifactId>
<version>12.1.2-0-0</version>
eckes
źródło
... a jednocześnie repo jest również publicznie dostępne: blogs.oracle.com/WebLogicServer/entry/…
eckes
1

Wysyłam oprogramowanie typu open source na licencji LGPLv2 i nawet po kilku rozmowach e-mailowych z Oracle nie było jasne, czy wolno mi wysłać ich binarny sterownik JDBC z moją dystrybucją. Problem dotyczył zgodności mojej licencji z warunkami OTN, dlatego zasugerowali, że nie wolno mi wysłać kierowcy. Przypuszczalnie związane z tą częścią

(b) rozpowszechniać programy wraz z aplikacjami opracowanymi przez klientów pod warunkiem, że każdy taki licencjobiorca wyraża zgodę na warunki licencji zgodne z warunkami niniejszej Umowy

Więc nawet jeśli uda ci się opublikować sterownik legalnie w swoim wyłącznym / lokalnym repozytorium maven, nadal istnieje ograniczenie tego, co możesz zrobić z tym artefaktem. Wydaje się absurdalne, że nawet jeśli dostarczę sterownik w formie binarnej wraz z pełnym plikiem licencji OTN, nadal nie mogę go użyć i muszę zmusić moich użytkowników do ręcznego pobrania sterownika Oracle i zejścia na ścieżkę biblioteki, zanim będą mogli korzystać z mojego oprogramowania.

Craig
źródło
0

Jest jedno repo, które zapewnia słoik. W SBT dodaj resolver podobny do tego: „repozytorium sterowników oracle” w „ http://dist.codehaus.org/mule/dependencies/maven2

oraz zależność: „oracle”% ”ojdbc14„% ”10.2.0.2”

Możesz zrobić to samo z maven. Pom.xml i jar są dostępne ( http://dist.codehaus.org/mule/dependencies/maven2/oracle/ojdbc14/10.2.0.2/ ).

yǝsʞǝla
źródło
Bądź ostrożny, ponieważ ten pom http://dist.codehaus.org/mule/dependencies/maven2/oracle/ojdbc14/10.2.0.2/ojdbc14-10.2.0.2.pom nie ma definicji licencji, więc nie sądzę, że został przesłany przez właściciela artefaktu. Ta odpowiedź sprawia, że ​​wszystko działa, ale niestety narażasz Cię na kłopoty z powodu naruszenia warunków licencji .
taringamberini
Downvoter, jesteś zły na mnie czy na Wyrocznię? :) Proszę wyjaśnić swoją opinię, aby inni użytkownicy wiedzieli, na czym polega problem z tą odpowiedzią.
yǝsʞǝla
0

Jeśli korzystasz z Netbeans, przejdź do Zależności i ręcznie zainstaluj artefakt. Znajdź pobrany plik .jar i gotowe. czysta wersja rozwiąże wszelkie problemy.

Zafrullah Syed
źródło
0

Można znaleźć projekt prosty przykładowy GitHub do stosowania sterownika Oracle JDBC na Maven projekcie tutaj .

Możesz znaleźć wszystkie wyjaśnienia dotyczące ciągłej integracji + próbkę i uruchomić na Travis-CI.

PRÓBNY

sgrillon
źródło
1
Link do rozwiązania jest mile widziany, ale upewnij się, że Twoja odpowiedź jest przydatna bez niego: dodaj kontekst wokół linku, aby inni użytkownicy mieli pojęcie o tym, co to jest i dlaczego tam jest, a następnie przytocz najbardziej odpowiednią część strony, którą „ ponowne linkowanie na wypadek, gdyby strona docelowa była niedostępna. Odpowiedzi, które są niewiele więcej niż link, mogą zostać usunięte.
Samuel Liew
1
Twój profil wskazuje, że jesteś powiązany z witryną, z którą masz link. Łączenie z czymś, z czym jesteś powiązany (np. Produktem lub witryną) bez ujawnienia, że ​​to twoje, jest uważane za spam w programie Stack Exchange / Stack Overflow. Zobacz: Co oznacza „dobra” autopromocja? , Kilka wskazówek i porad na temat autopromocji , Jaka jest dokładna definicja „spam” na przepełnienie stosu? i Co powoduje, że coś jest spamem .
Samuel Liew
0

Dla zależności

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

Próbować

<repository>
    <id>mvnrepository</id>
    <url>http://nexus.saas.hand-china.com/content/repositories/rdc</url>
</repository>
bosco1
źródło
0

W moim przypadku działa to dla mnie po dodaniu poniższej zależności wersji (10.2.0.4). Po dodaniu tej wersji 10.2.0.3.0 nie działa, ponieważ plik .jar nie jest dostępny w ścieżce repozytorium.

<groupId>com.oracle</groupId>
<artifactId>ojdbc14</artifactId>
<version>10.2.0.4</version>
anand krish
źródło
0

Spróbuj poniżej:

<dependency>
    <groupId>com.oracle.ojdbc</groupId>
    <artifactId>ojdbc8</artifactId>
    <version>19.3.0.0</version>
</dependency>
Słoneczny
źródło
-3

ROZWIĄZANY

  • Wykonaj następujące ustawienia, aby rozwiązać problem

To repozytorium musi umożliwiać wyszukiwanie zależności Oracle 10.0.3.0 (to ustawienie należy wykonać w Buildconfig.groovy grails.project.dependency.resolver = "bluszcz" // lub bluszcz

Użyj również następującego ustawienia do kompilacji pobierania sterownika Oracle

środowisko wykonawcze „com.oracle:ojdbc:10.2.0.3.0”

To powinno rozwiązać problem związany ze znalezieniem sterownika Oracle dla aplikacji Grails


Makarand
źródło