Gradle/Maven 对 Redshift JDBC 驱动程序的依赖
Gradle/Maven dependency for Redshift JDBC driver
我已经下载了 RedshiftJDBC41-1.1.17.1007.jar 以将 com.amazon.redshift.jdbc41.Driver
用于我正在做的一些 Redshift POC 工作,并且一直在手动将其添加到我的类路径中。
我现在想将它合并到我们的构建中,但我似乎无法找到一个依赖项名称的示例来放入我的 build.gradle
文件或在 Maven 存储库中找到它.有小费吗? (注意,我只在寻找 redshift jdbc,而不是旧的 postgres-redshift 驱动程序)。
似乎这个工件在任何 Maven 存储库中都不可用。我能够在 this GitHub repo 上找到版本 1.1.2.0002
的 redshift JDBC 驱动程序,但这不是您要查找的版本。
您最好的选择是 manually add this dependency 使用:
mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> -DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=jar -DgeneratePom=true
首先要意识到的是,amazon 文档告诉您加载 v4 版本的驱动程序 JAR 文件。如果您下载了驱动程序,您将获得 v4X 版本的驱动程序,因此您的代码应为:
Class.forName("com.amazon.redshift.jdbc41.Driver");
没有
Class.forName("com.amazon.redshift.jdbc4.Driver");
注意第一个例子中版本号的添加!
驱动程序 jar 在这里:
http://docs.aws.amazon.com/redshift/latest/mgmt/configure-jdbc-connection.html
Amazon 不发布到 Maven(来吧 Amazon WTF?)所以你必须导入你下载的 jar。 Maven 导入命令(对于 JDBC)如下所示:
mvn install:install-file -Dfile=./RedshiftJDBC41-1.1.10.1010.jar -DgroupId=com.amazon -DartifactId=redshift.jdbc41 -Dversion=1.1.10.1010 -Dpackaging=jar -DgeneratePom=true
Maven依赖如下所示(注意artificatID和Version应该是你在上面mvn命令中给它的。如果驱动已经更新,那么mvn命令和依赖字段必须改变):
<dependency>
<groupId>com.amazon</groupId>
<artifactId>redshift.jdbc41</artifactId>
<version>1.1.10.1010</version>
</dependency>
他们不上传到 public 存储库的简单原因:许可。
我因此浪费了很多时间。花一个小时弄清楚在 Maven 回购中找到它并找到原因(阅读人们的评论等)。一个小时将其上传到内部存储库。然后弄清楚如何将它与 AWS Lambda 一起使用。
由于一些愚蠢的 licensing/legal 问题,Amazon 不会将 RedShift JDBC 驱动程序发布到任何 public 存储库。他们使用很多开源项目,但不回馈社区。仅此 redshift 驱动程序就是一个例子。
这是一家以客户为中心的公司,但仍然有一些法律人员没有做好自己的工作。顺便说一句,我是亚马逊的前雇员。
Amazon 不发布到 Maven,因此您必须导入下载的 jar。
Gradle
download driver
2.create项目根目录下的libs文件夹
加入build.gradle
repositories {
flatDir { dirs 'libs'}
}
dependencies {
compile name: 'RedshiftJDBC42-1.2.1.1001'
}
JAVA 用法示例
Redshift JDBC 驱动程序现已在 Maven 存储库中可用。看看http://docs.aws.amazon.com/redshift/latest/mgmt/configure-jdbc-connection-with-maven.html
如果 link 不起作用,请导航至 Querying a Database -> Connecting to a Cluster Using SQL Client Tools -> Configuring Connections in Amazon Redshift -> Configuring a JDBC Connection
添加 redshift 存储库
<repositories>
<repository>
<id>redshift</id>
<url>http://redshift-maven-repository.s3-website-us-east-1.amazonaws.com/release</url>
</repository>
</repositories>
然后添加依赖,如
<dependency>
<groupId>com.amazon.redshift</groupId>
<artifactId>redshift-jdbc42</artifactId>
<version>1.2.41.1065</version>
</dependency>
但是驱动程序有很多变体,所以您应该访问该页面以阅读更多信息并选择您需要的那个。
最简单的方法是将 Amazon 的 Redshift 存储库添加到您的 gradle 构建文件,然后像这样包含依赖项。
build.gradle:
group 'com.yourcompany'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
maven {
url 'http://redshift-maven-repository.s3-website-us-east-1.amazonaws.com/release'
}
}
dependencies {
compile group: 'com.amazon.redshift', name: 'redshift-jdbc42', version: '1.2.16.1027'
}
添加
<repositories>
<repository>
<id>redshift</id>
<url>https://s3.amazonaws.com/redshift-maven-repository/release</url>
</repository>
</repositories>
然后是你想要的版本。
<dependency>
<groupId>com.amazon.redshift</groupId>
<artifactId>redshift-jdbc42</artifactId>
<version>1.2.10.1009</version>
</dependency>
我已经下载了 RedshiftJDBC41-1.1.17.1007.jar 以将 com.amazon.redshift.jdbc41.Driver
用于我正在做的一些 Redshift POC 工作,并且一直在手动将其添加到我的类路径中。
我现在想将它合并到我们的构建中,但我似乎无法找到一个依赖项名称的示例来放入我的 build.gradle
文件或在 Maven 存储库中找到它.有小费吗? (注意,我只在寻找 redshift jdbc,而不是旧的 postgres-redshift 驱动程序)。
似乎这个工件在任何 Maven 存储库中都不可用。我能够在 this GitHub repo 上找到版本 1.1.2.0002
的 redshift JDBC 驱动程序,但这不是您要查找的版本。
您最好的选择是 manually add this dependency 使用:
mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> -DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=jar -DgeneratePom=true
首先要意识到的是,amazon 文档告诉您加载 v4 版本的驱动程序 JAR 文件。如果您下载了驱动程序,您将获得 v4X 版本的驱动程序,因此您的代码应为:
Class.forName("com.amazon.redshift.jdbc41.Driver");
没有
Class.forName("com.amazon.redshift.jdbc4.Driver");
注意第一个例子中版本号的添加!
驱动程序 jar 在这里:
http://docs.aws.amazon.com/redshift/latest/mgmt/configure-jdbc-connection.html
Amazon 不发布到 Maven(来吧 Amazon WTF?)所以你必须导入你下载的 jar。 Maven 导入命令(对于 JDBC)如下所示:
mvn install:install-file -Dfile=./RedshiftJDBC41-1.1.10.1010.jar -DgroupId=com.amazon -DartifactId=redshift.jdbc41 -Dversion=1.1.10.1010 -Dpackaging=jar -DgeneratePom=true
Maven依赖如下所示(注意artificatID和Version应该是你在上面mvn命令中给它的。如果驱动已经更新,那么mvn命令和依赖字段必须改变):
<dependency>
<groupId>com.amazon</groupId>
<artifactId>redshift.jdbc41</artifactId>
<version>1.1.10.1010</version>
</dependency>
他们不上传到 public 存储库的简单原因:许可。
我因此浪费了很多时间。花一个小时弄清楚在 Maven 回购中找到它并找到原因(阅读人们的评论等)。一个小时将其上传到内部存储库。然后弄清楚如何将它与 AWS Lambda 一起使用。
由于一些愚蠢的 licensing/legal 问题,Amazon 不会将 RedShift JDBC 驱动程序发布到任何 public 存储库。他们使用很多开源项目,但不回馈社区。仅此 redshift 驱动程序就是一个例子。
这是一家以客户为中心的公司,但仍然有一些法律人员没有做好自己的工作。顺便说一句,我是亚马逊的前雇员。
Amazon 不发布到 Maven,因此您必须导入下载的 jar。
Gradle
download driver 2.create项目根目录下的libs文件夹
加入build.gradle
repositories { flatDir { dirs 'libs'} } dependencies { compile name: 'RedshiftJDBC42-1.2.1.1001' }
JAVA 用法示例
Redshift JDBC 驱动程序现已在 Maven 存储库中可用。看看http://docs.aws.amazon.com/redshift/latest/mgmt/configure-jdbc-connection-with-maven.html
如果 link 不起作用,请导航至 Querying a Database -> Connecting to a Cluster Using SQL Client Tools -> Configuring Connections in Amazon Redshift -> Configuring a JDBC Connection
添加 redshift 存储库
<repositories>
<repository>
<id>redshift</id>
<url>http://redshift-maven-repository.s3-website-us-east-1.amazonaws.com/release</url>
</repository>
</repositories>
然后添加依赖,如
<dependency>
<groupId>com.amazon.redshift</groupId>
<artifactId>redshift-jdbc42</artifactId>
<version>1.2.41.1065</version>
</dependency>
但是驱动程序有很多变体,所以您应该访问该页面以阅读更多信息并选择您需要的那个。
最简单的方法是将 Amazon 的 Redshift 存储库添加到您的 gradle 构建文件,然后像这样包含依赖项。
build.gradle:
group 'com.yourcompany'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
maven {
url 'http://redshift-maven-repository.s3-website-us-east-1.amazonaws.com/release'
}
}
dependencies {
compile group: 'com.amazon.redshift', name: 'redshift-jdbc42', version: '1.2.16.1027'
}
添加
<repositories>
<repository>
<id>redshift</id>
<url>https://s3.amazonaws.com/redshift-maven-repository/release</url>
</repository>
</repositories>
然后是你想要的版本。
<dependency>
<groupId>com.amazon.redshift</groupId>
<artifactId>redshift-jdbc42</artifactId>
<version>1.2.10.1009</version>
</dependency>