Ich habe die RedshiftJDBC41-1.1.17.1007.jar heruntergeladen, um die com.amazon.redshift.jdbc41.Driver
für einige Redshift-POC-Arbeiten zu verwenden, die ich gerade gemacht habe, und habe sie manuell zu meinem Klassenpfad hinzugefügt.
Ich möchte es jetzt in unseren Build integrieren, aber ich kann kein Beispiel für einen Abhängigkeitsnamen finden, um es in meine build.gradle
-Datei einzufügen oder in einem Maven-Repo zu finden. Irgendwelche Tipps? (Hinweis, ich suche nur nach Rotverschiebung jdbc, nicht nach dem älteren postgres-redshift-Treiber).
Als Erstes müssen Sie wissen, dass die Amazon-Dokumentation Ihnen die Version 4 der Treiber-JAR-Datei lädt. Wenn Sie den Treiber heruntergeladen haben, haben Sie eine v4X-Version des Treibers erhalten, so dass der Code wie folgt lauten sollte:
%Vor%NICHT
%Vor%Beachten Sie das Hinzufügen der Versionsnummer im ersten Beispiel!
Das Treiberglas ist hier:
Ссылка
Amazon veröffentlicht nicht in Maven (Kommen Sie auf Amazon WTF?), also müssen Sie das Glas importieren, das Sie herunterladen. Der Maven-Importbefehl (für JDBC) sieht folgendermaßen aus:
mvn install: Installationsdatei -Datei =. / RedshiftJDBC41-1.1.10.1010.jar -DgroupId = com.amazon -DartifactId = redshift.jdbc41 -Dversion = 1.1.10.1010 -Dpackaging = jar -DGeneratePom = true
Die Maven-Abhängigkeit sieht folgendermaßen aus (Beachten Sie, dass die artificatID und die Version das sein sollten, was Sie im obigen mvn-Befehl angegeben haben. Wenn der Treiber aktualisiert wurde, müssen sich der mvn-Befehl und die Abhängigkeitsfelder ändern):
%Vor%Einfacher Grund, warum sie nicht zum öffentlichen Repo hochladen: Lizenzierung.
Ich habe deswegen viele Stunden verschwendet. Eine Stunde, um herauszufinden, es in Maven Repo zu finden und den Grund zu finden (Lesen über Leute Kommentare usw.). Eine Stunde, um es in das interne Repository hochzuladen. Dann herauszufinden, wie man es mit AWS Lambda verwendet.
Amazon veröffentlicht den RedShift-JDBC-Treiber aufgrund einiger dummer Lizenzierungs- / Rechtsfragen nicht in einem öffentlichen Repository. Sie verwenden viele Open-Source-Projekte, bringen aber nichts zur Community zurück. Gerade dieser Rotverschiebungstreiber ist ein Beispiel.
Es ist ein kundenorientiertes Unternehmen, aber immer noch gibt es einige legale Leute, die ihre Arbeit nicht richtig machen. Übrigens, ich bin ein ehemaliger Mitarbeiter von Amazon.
Amazon veröffentlicht nicht in Maven, also müssen Sie das heruntergeladene jar importieren.
Gradle
Treiber herunterladen 2. Erstellen Sie den libs-Ordner im Stammverzeichnis von Projekt
fügen Sie in build.gradle
hinzu %Vor%JAVA-VERWENDUNGSBEISPIEL
Es scheint, dass dieses Artefakt in keinem Maven Repo verfügbar ist. Ich konnte den Redshift-JDBC-Treiber für die Version 1.1.2.0002
auf diesem GitHub-Repo finden , aber das ist nicht die Version, die Sie suchen.
Am besten wäre es, diese Abhängigkeit manuell hinzuzufügen :
%Vor%Tags und Links gradle maven amazon-redshift