Temukan driver Oracle JDBC di repositori Maven

292

Saya ingin menambahkan driver jdbc oracle ke proyek saya sebagai dependensi (lingkup runtime) - ojdbc14. Di situs MVNrepository ketergantungan untuk dimasukkan ke dalam POM adalah:

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

tentu saja ini tidak berfungsi karena tidak ada di repositori pusat yang digunakan oleh pakar. 2 pertanyaan:

  1. Bagaimana cara menemukan repositori (jika ada) yang berisi artefak ini?

  2. Bagaimana saya menambahkannya sehingga Maven akan menggunakannya?

rperez
sumber

Jawaban:

412

Bagaimana cara menemukan repositori (jika ada) yang berisi artefak ini?

Sayangnya karena lisensi biner tidak ada repositori publik dengan Oracle Driver JAR. Ini terjadi dengan banyak ketergantungan tetapi bukan kesalahan Maven. Jika Anda menemukan repositori publik yang berisi JAR, Anda bisa yakin itu ilegal.

Bagaimana saya menambahkannya sehingga Maven akan menggunakannya?

Beberapa JAR yang tidak dapat ditambahkan karena alasan lisensi memiliki entri pom di repo Maven Central . Lihat saja, ini berisi info Maven yang disukai vendor:

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

... dan URL untuk mengunduh file yang dalam hal ini adalah http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html .

Setelah Anda mengunduh JAR, tambahkan saja ke repositori komputer Anda dengan (catatan saya menarik groupId, artifactId, dan versi dari POM):

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

Parameter terakhir untuk menghasilkan POM akan menyelamatkan Anda dari peringatan pom.xml

Jika tim Anda memiliki repositori Maven lokal, panduan ini mungkin berguna untuk mengunggah JAR di sana.

victor hugo
sumber
@ Viktor - di mana saya menemukan garis-garis ini? di settings.xml?
Dejell
1
Itu bukan baris di settings.xml tetapi sebuah perintah, setelah Anda memiliki JAR, perintah itu akan menambahkannya ke repositori lokal Anda
victor hugo
15
Untuk OJDBC6: 1. mvn instal: install-file -DgroupId = com.oracle -DartifactId = ojdbc6 -Dversi = 11.2.0.3 -Paket = jar -Dfile = ojdbc6.jar -DgeneratePom = true 2. Tambahkan ini ke pom.xml: <dependency> <groupId> com.oracle </groupId> <artifactId> ojdbc6 </artifactId> <version> 11.2.0.3 </version> </dependency>
oskarae
11
Saya mengembara mengapa Oracle sangat jelek sehingga tidak peduli dengan semua penilaian publik yang dimilikinya. Ini buruk bahkan dalam hal-hal kecil seperti ketersediaan publik perpustakaan gratis mereka sendiri.
Askar Kalykov
7
@AmanicA Menurut stackoverflow.com/a/27943380/7677308 , Oracle sekarang meng-host repositori seperti itu
SilverNak
51

Untuk alasan apa pun, saya tidak bisa mendapatkan solusi di atas untuk bekerja. (Masih tidak bisa.)

Sebaliknya yang saya lakukan adalah memasukkan toples ke dalam proyek saya (blech) dan kemudian membuat ketergantungan "sistem" untuknya yang menunjukkan jalur ke toples. Ini mungkin bukan cara yang BENAR untuk melakukannya, tetapi itu berhasil. Dan itu menghilangkan kebutuhan untuk pengembang lain di tim (atau orang yang menyiapkan server build) untuk menempatkan toples di repositori lokal mereka.

UPDATE : Solusi ini berfungsi untuk saya ketika saya menjalankan Alat Hibernate. Tampaknya TIDAK berfungsi untuk membuat file PERANG. Itu tidak termasuk file ojdbc6.jar dalam file PERANG target.

1) Buat direktori bernama "lib" di root proyek Anda.

2) Salin file ojdbc6.jar di sana (apa pun wadahnya disebut.)

3) Buat ketergantungan yang terlihat seperti ini:

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

Jelek, tapi bekerja untukku.

Untuk memasukkan file dalam file perang tambahkan berikut ini ke pom Anda

<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
sumber
8
Saya sebenarnya menyukai solusi ini karena tidak memerlukan pengaturan nexus, biasanya hanya ada 1 atau 2 botol seperti ini dalam sebuah proyek, dan itu menyederhanakan pengaturan pengembang lain pada proyek karena mereka tidak harus memperbarui .m2 env lokal mereka . (Peramal menjadi kandidat utama untuk ini). Juga, jika Anda memperbarui repo sumber Anda dengan jar oracle baru, semua pengembang mendapatkannya pada tarikan berikutnya.
Q Boiler
menambahkan info tentang cara menambahkan file jar ke file WAR
ojblass
1
Ini bekerja untuk saya - codingcraftsman.wordpress.com/2015/04/20/...
Ashley Frieze
1
@Marvo, saya mencoba banyak solusi dan ini yang terbaik, terima kasih banyak
Mahmoud Saleh
35

Oracle JDBC Driver sekarang tersedia di Oracle Maven Repository (bukan di Central).

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

Oracle Maven Repository memerlukan pendaftaran pengguna. Instruksi dapat ditemukan di:

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

Perbarui 2019-10-03

Saya perhatikan Spring Boot sekarang menggunakan Driver Oracle JDBC dari Maven Central .

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

Untuk pengguna Gradle, gunakan:

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

Tidak perlu registrasi pengguna.

Perbarui 2020-03-02

Oracle sekarang menerbitkan driver di bawah id grup com.oracle.database. Lihat jawaban Anthony Accioly untuk informasi lebih lanjut. Terima kasih Anthony.

Oracle JDBC Driver kompatibel dengan JDK6, JDK7, dan JDK8

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

Oracle JDBC Driver kompatibel dengan JDK8, JDK9, dan JDK11

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

Oracle JDBC Driver kompatibel dengan JDK10 dan JDK11

<dependency>
  <groupId>com.oracle.database.jdbc</groupId>
  <artifactId>ojdbc10</artifactId>
  <version>19.3.0.0</version>
</dependency>
Bienvenido David
sumber
ini harus menjadi cara yang disukai.
Ashish
30

Unduh toples dan letakkan di proyek Anda src/lib. Sekarang Anda dapat menggunakan plugin installer 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>

Sekarang Anda hanya perlu menjalankan mvn cleansatu kali dan lib oracle diinstal di repositori pakar lokal Anda.

Peter Enis
sumber
9
alternatif yang sangat berguna!
Rakesh Waghela
22

Oracle sekarang mengekspos repositori maven di maven.oracle.com Namun Anda harus diautentikasi.

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

Menurut komentar di posting blog driver ojdbc harus tersedia di koordinat berikut:

<groupId>com.oracle.weblogic</groupId>
 <artifactId>ojdbc7</artifactId>
 <version>12.1.3-0-0</version>
 <packaging>jar</packaging>
Sebastien
sumber
7
Ini berhasil. Agak merepotkan. Anda harus memastikan Anda mendapatkan artefak yang tepat, membuat akun Oracle, menambahkan beberapa hal ke settings.xml dan file pom.xml Anda dan menambahkan nama pengguna dan kata sandi untuk akun itu ke settings.xml. Oracle perlu memperbaiki lisensi mereka karena ini masih PITA.
ggb667
12
Membutuhkan otentikasi untuk mendapatkan artefak pakar terdengar konyol.
Rafael Soares - tuelho
3
Jika Anda harus karena alasan tertentu menggunakan ojdbc6 (yaitu Anda terjebak di Java 6), kemudian ubah artifactId ke ojdbc6 dan ubah versinya menjadi 12.1.2-0-0.
dcsohl
Saya mencoba mencari rilis 11g (11.2.0.4) untuk java 6 ... adakah yang menemukan?
jpfreire
2
Pembaruan : Dipaku: untuk driver jdbc yang lebih lama, Anda juga harus mengubah 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

Coba dengan:

<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> 
mencari9x
sumber
14
Kecuali bahwa ini merupakan pelanggaran terhadap lisensi Oracle.
Ben L.
3
Kekerasan lisensi, tetapi berhasil. Saya menggunakannya untuk tujuan pendidikan (bukan dalam produksi). Ia juga memegang driver 12c <dependency> <groupId> com.oracle </groupId> <artifactId> ojdbc7 </artifactId> <version> 12.1.0.2 </version> </dependency>
Svetlin Nakov
4
Selain masalah lisensi, Anda tidak boleh menambahkan repositori yang tidak dikenal di pom Anda . Ini menghadirkan risiko keamanan dan juga dapat mengancam bangunan Anda. Seberapa besar kepercayaan yang dapat Anda masukkan ke dalam repositori dari Gereja Yesus Kristus dari Orang-Orang Suci Zaman Akhir ? Jaminan apa yang mereka berikan bahwa repositori dapat diandalkan, aman dan aman, dan bahwa mereka tidak akan mengacaukannya? Apa yang terjadi jika mereka diretas dan menerbitkan versi berbahaya dari driver ojdbc, atau ketergantungan Anda yang lain?
Didier L
14

1. Bagaimana cara menemukan repositori (jika ada) yang berisi artefak ini?

Seperti yang telah dikomentari oleh DavidS , baris yang saya kutip pada saat saya menjawab tidak ada lagi pada saat ini (saat ini saya sedang menulis sekarang) Perjanjian Perjanjian Lisensi OTN yang saya tautkan. Pertimbangkan jawaban ini hanya untuk versi artefak yang lebih lama, seperti 10.2.0.3.0 dan sejenisnya.

Semua Oracle Database JDBC Drivers terdistribusi berdasarkan Perjanjian Lisensi OTN .

Jika Anda membaca Perjanjian Lisensi OTN Anda menemukan istilah lisensi ini:

Anda tidak boleh:
...
- mendistribusikan program kecuali disertai dengan aplikasi Anda;
...

jadi itu sebabnya Anda tidak dapat menemukan toples pengemudi di Repositori Maven publik apa pun, karena itu akan dibagikan sendiri, dan jika itu terjadi maka itu akan menjadi pelanggaran lisensi.

Menambahkan ketergantungan:

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

(atau versi yang lebih baru) menjadikan Maven ojdbc14-10.2.0.3.0.pomhanya unduhan , dan di pom itu Anda dapat membaca:

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

yang memberi tahu Anda tentang Lisensi OTN.

2. Bagaimana saya menambahkannya sehingga Maven akan menggunakannya?

Untuk membuat dependensi di atas berfungsi, saya setuju dengan victor hugo yang menyarankan Anda di sini untuk secara manual memasang toples ke dalam repositori Maven lokal Anda ( .m2direktori) dengan menjalankan:

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

tetapi saya ingin menambahkan bahwa ketentuan lisensi di atas tidak hanya membatasi di mana Anda tidak dapat menemukan tabung JDBC, tetapi juga membatasi tempat Anda menginstalnya!

Bahkan repositori Maven lokal Anda harus pribadi dan tidak dibagikan karena jika dibagikan itu akan menjadi semacam distribusi di mana toples didistribusikan sendirian, bahkan jika untuk sekelompok kecil orang ke dalam jaringan area lokal Anda, dan ini mewakili Pelanggaran Perjanjian Lisensi OTN .

Selain itu saya pikir Anda harus menghindari memasang toples JDBC di manajer repositori perusahaan Anda (seperti Artifactory atau Nexus ) sebagai artefak tunggal karena jika dipasang itu akan tetap didistribusikan sendirian, bahkan jika hanya untuk orang-orang di organisasi Anda saja, dan ini mewakili sebuah pelanggaran Perjanjian Lisensi OTN .

taringamberini
sumber
1
Khususnya, garis yang Anda kutip tidak lagi ada dalam perjanjian yang Anda tautkan. Baris terdekat yang tersisa adalah, saya pikir, "Kami memberi Anda hak non-eksklusif, tidak dapat dipindahtangankan untuk menyalin dan mendistribusikan Program dan Dokumentasi Program yang tidak dimodifikasi sebagai bagian dari dan termasuk dalam aplikasi Anda yang dimaksudkan untuk beroperasi dengan Produk Terkait, jika ada, dengan ketentuan bahwa Anda tidak membebankan biaya tambahan kepada pengguna akhir Anda untuk penggunaan Program ", yang seperti yang Anda lihat lebih berkaitan dengan pembayaran daripada spesifik redistribusi.
DavidS
13

Anda dapat menggunakan Nexus untuk mengelola dependensi pihak ketiga serta dependensi dalam repositori standar.

Michael Munsey
sumber
4
Bagaimana nexus akan membantu dalam kasus ini? Dari mana ia akan mengunduh artefak dari?
ziggy
4
Jawabannya tidak lengkap, tapi saya pikir @Michael Munsey mengatakan untuk membuat repositori internal / perusahaan untuk diunduh.
Randolph
Iya. Siapkan Nexus, lalu unduh guci secara manual dan masukkan ke Nexus sehingga maven build yang berurutan dapat menariknya dari instance Nexus Anda.
Michael Munsey
1
@MichaelMunsey Secara umum menyarankan manajer repositori seperti Artifactory atau Nexus akan menjadi jawaban yang baik, tetapi dalam kasus spesifik driver database Oracle JDBC, itu bukan yang baik karena, bahkan jika itu membuat sesuatu bekerja, sayangnya membuat Anda terpapar. masalah karena pelanggaran jangka waktu lisensi ini .
taringamberini
6

Hingga saat ini, tidak mungkin menggunakan repositori pakar. Saya menggunakan ivy sebagai alat manajemen ketergantungan, tetapi juga menggunakan repositori ibiblio maven2. Dan ini bekerja untuk ivy:

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

Ketergantungan Maven2 bisa seperti itu:

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

Perhatikan bahwa saya mendefinisikan http://download.java.net/maven/2/ dan http://mirrors.ibiblio.org/pub/mirrors/maven/mule/dependencies/maven2/ [organisasi] / [modul] / [ revisi] / [artefak] - [revisi]. [ext] sebagai maven2 eksternal repos pada pengaturan ivy saya.

tugcem
sumber
1
Ini adalah jawaban yang bagus - Anda bisa menambahkan repo: mirrors.ibiblio.org/pub/mirrors/maven/mule/dependencies/maven2 ke pom.xml Anda agar ini berfungsi.
Grouchal
7
Mungkin berhasil, tetapi apakah itu legal? Sebagaimana dijelaskan dalam salah satu jawaban lain di sini, Oracle tidak mengizinkan driver untuk didistribusikan oleh siapa pun kecuali mereka dan mereka tidak menyediakan repositori Maven. Jika Anda menggunakan solusi ini, kadang-kadang driver dapat dihapus dari repositori ketika Anda tidak mengharapkannya.
LS
1
@Grouchal Jawaban ini membuat segala sesuatunya bekerja tetapi, sayangnya, membuat Anda kesulitan karena pelanggaran ketentuan lisensi ini .
taringamberini
@ Geuchal ... tidak ada http://maven.ibiblio.org/maven/oraclejuga http://maven.ibiblio.org/maven/com.oracle.
david
6

Pada hari ini (27 Februari 2020) Oracle mengumumkan telah menerbitkan semua pustaka klien JDBC dari versi 11.2.0.4 (misalnya ojdbc6) hingga 19.3.0 (misalnya ojdbc10) di Maven Central di bawah id grup. comacle.atacle.database :

Contoh:

<dependency>
  <groupId>com.oracle.database.jdbc</groupId>
  <artifactId>ojdbc10</artifactId>
  <version>19.3.0.0</version>
</dependency>
Anthony Accioly
sumber
3

Berita baik semuanya! Akhirnya kita dapat menggunakan repo resmi Oracle: https://blogs.oracle.com/dev2dev/get-oracle-jdbc-drivers-and-ucp-from-oracle-maven-repository-without-ides

Vladimir Chervanev
sumber
4
Berita bagus, tetapi pengaturan keamanannya terlalu rumit. Lebih mudah untuk mengunduh JAR di folder "lib" seperti yang kami lakukan pada tahun 1999.
Svetlin Nakov
berhasil! Pengaturan keamanan tidak begitu rumit dan didokumentasikan dengan baik, Anda harus melakukannya hanya sekali. Tentunya fakta bahwa Anda harus menyalin kode sandi (terenkripsi) Anda di suatu tempat adalah hal yang menyakitkan, saya juga mempertanyakan keputusan Oracle untuk "melindungi" akses ke repositori "publik" mereka, sama sekali tidak masuk akal dari perspektif pengembang.
Pierluigi Vernetto
2

Beberapa Produk Oracle mendukung penerbitan artefak pakar ke repositori lokal. Produk memiliki direktori plugin / pakar yang berisi deskripsi di mana menemukan artefak dan tempat menyimpannya. Ada Plugin dari Oracle yang benar-benar akan melakukan pengunggahan.

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

Salah satu produk yang dapat mengirimkan OJDBC dengan cara ini adalah WLS, namun menggunakan koordinat yang cukup aneh:

<groupId>com.oracle.weblogic</groupId>
<artifactId>ojdbc6</artifactId>
<version>12.1.2-0-0</version>
eek
sumber
... dan sementara itu repo juga tersedia untuk umum: blogs.oracle.com/WebLogicServer/entry/…
eckes
1

Saya mengirimkan opensource di bawah LGPLv2 dan bahkan setelah beberapa percakapan email dengan Oracle, mereka tidak jelas apakah saya diizinkan untuk mengirim driver JDBC biner mereka dengan distribusi saya. Masalah terkait dengan apakah lisensi saya kompatibel dengan persyaratan OTN mereka sehingga mereka menyarankan saya tidak diizinkan untuk mengirim pengemudi. Agaknya terkait dengan bagian ini

(B) untuk mendistribusikan program dengan aplikasi yang telah Anda kembangkan untuk pelanggan Anda asalkan masing-masing penerima lisensi tersebut setuju untuk persyaratan lisensi konsisten dengan ketentuan Perjanjian ini

Jadi, bahkan jika Anda berhasil menerbitkan driver secara legal di repositori maven eksklusif / lokal Anda masih ada batasan pada apa yang Anda boleh lakukan dengan artefak itu. Tampaknya tidak masuk akal bahwa bahkan jika saya mengirim driver mereka dalam bentuk biner bersama dengan file lisensi OTN lengkap, saya masih tidak dapat menggunakannya dan harus memaksa pengguna saya untuk mengunduh driver Oracle secara manual dan masuk ke jalur perpustakaan saya sebelum mereka dapat menggunakan perangkat lunak saya.

Craig
sumber
0

Ada satu repo yang menyediakan toples. Dalam SBT, tambahkan resolver yang serupa dengan ini: "oracle driver repo" di " http://dist.codehaus.org/mule/dependencies/maven2 "

dan ketergantungan: "oracle"% "ojdbc14"% "10.2.0.2"

Anda dapat melakukan hal yang sama dengan pakar. pom.xml dan toples tersedia ( http://dist.codehaus.org/mule/dependencies/maven2/oracle/ojdbc14/10.2.0.2/ ).

yǝsʞǝla
sumber
Hati-hati karena pom ini http://dist.codehaus.org/mule/dependencies/maven2/oracle/ojdbc14/10.2.0.2/ojdbc14-10.2.0.2.pom tidak memiliki definisi lisensi, jadi saya tidak berpikir itu diunggah oleh pemilik artefak. Jawaban ini membuat segala sesuatunya bekerja tetapi, sayangnya, membuat Anda bermasalah karena pelanggaran ketentuan lisensi ini .
taringamberini
Downvoter, apakah Anda marah pada saya atau pada Oracle? :) Tolong jelaskan downvote Anda sehingga pengguna lain tahu apa masalahnya dengan jawaban ini.
yǝsʞǝla
0

Jika Anda menggunakan Netbeans, goto Dependencies dan instal artefak secara manual. Temukan file .jar yang Anda unduh dan selesai. build bersih akan menyelesaikan masalah.

Zafrullah Syed
sumber
0

Anda dapat menemukan contoh proyek Github sederhana untuk menggunakan Driver Oracle JDBC di Maven Project di sini .

Anda dapat menemukan semua penjelasan untuk integrasi berkelanjutan Anda + sampel dan berjalan di Travis-CI.

DEMO

sgrillon
sumber
1
Tautan ke suatu solusi disambut baik, tetapi harap pastikan jawaban Anda bermanfaat tanpanya: tambahkan konteks di sekitar tautan sehingga teman-teman Anda akan mengetahui apa itu dan mengapa ada, lalu kutip bagian yang paling relevan dari halaman yang Anda tuju. menghubungkan kembali jika seandainya halaman target tidak tersedia. Jawaban yang sedikit lebih dari sebuah tautan dapat dihapus.
Samuel Liew
1
Profil Anda menunjukkan bahwa Anda dikaitkan dengan situs web yang telah Anda tautkan. Menautkan ke sesuatu yang Anda berafiliasi (misalnya produk atau situs web) tanpa mengungkapkan milik Anda dianggap sebagai spam di Stack Exchange / Stack Overflow. Lihat: Apa yang menandakan promosi diri "Bagus"? , beberapa tips dan saran tentang promosi diri , Apa definisi yang tepat dari "spam" untuk Stack Overflow? , dan Apa yang membuat sesuatu menjadi spam .
Samuel Liew
0

Untuk ketergantungan

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

Mencoba

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

Dalam kasus saya ini berfungsi untuk saya setelah menambahkan ketergantungan versi di bawah ini (10.2.0.4). Setelah menambahkan versi ini 10.2.0.3.0 tidak berfungsi karena file .jar tidak tersedia di jalur repositori.

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

Silakan coba di bawah ini:

<dependency>
    <groupId>com.oracle.ojdbc</groupId>
    <artifactId>ojdbc8</artifactId>
    <version>19.3.0.0</version>
</dependency>
Cerah
sumber
-3

TERPECAHKAN

  • Silakan lakukan pengaturan berikut untuk menyelesaikan kesalahan

Repositori ini perlu diaktifkan untuk menemukan Oracle 10.0.3.0 dependecies (pengaturan ini perlu dilakukan di Buildconfig.groovy grails.project.dependency.resolver = "ivy" // atau ivy

Juga gunakan pengaturan berikut untuk waktu kompilasi unduhan driver Oracle

runtime "com.oracle:ojdbc:10.2.0.3.0"

Ini akan menyelesaikan masalah Anda karena tidak menemukan driver Oracle untuk aplikasi grails


Makarand
sumber