我正在使用没有sudo访问权限的CentOS 6.8版(最终版)服务器.我编译了PostgreSQL v9.6 beta 2.
当我使用ant加载数据时,我得到am.amcanorder列不存在错误,我不知道如何修复.
我正在按照教程设置Intermine数据仓库系统,我正在这一步.
ant -Dsource=uniprot-malaria -v
Run Code Online (Sandbox Code Playgroud)
这将需要几分钟才能完成,该命令运行以下步骤:
粗体部分是(在我看来)造成错误的原因.相关错误详细是:
org.postgresql.util.PSQLException: ERROR: column am.amcanorder does not exist
Position: 407
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2161)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1890)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:559)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:403)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:283)
at org.postgresql.jdbc2.AbstractJdbc2DatabaseMetaData.getIndexInfo(AbstractJdbc2DatabaseMetaData.java:4234)
at org.intermine.task.CreateIndexesTask.execute(CreateIndexesTask.java:212)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
Run Code Online (Sandbox Code Playgroud)
小智 45
Player87是正确的,只需用PostgresSQL 服务器的 9.5.*替换较新版本9.6*即可.
但是,还有另一种解决方案.对于Java项目,我也尝试在9.6.*上保留PostgresSQL 服务器并更新PostgresSQL驱动程序,从版本9.4-1203到最新的9.4-1211.在maven pom.xml文件中:
<postgresql.version>9.4.1211</postgresql.version>
Run Code Online (Sandbox Code Playgroud)
这对我也有用.
Gre*_*tle 10
对我来说(从Java/Maven应用程序连接到PostgreSQL并面临同样的错误),这是一个驱动程序问题.
将PostgreSQL驱动程序从9.4-1201-jdbc41更新到42.1.4解决了它.我的Maven依赖现在看起来像这样:
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.1.4</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
我遇到了与SpringBoot相同的问题,并通过升级我的驱动程序解决了这个问题
对于Spring Boot 1.4.0,我刚刚添加了以下依赖项
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>
| 归档时间: |
|
| 查看次数: |
27719 次 |
| 最近记录: |