首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PL/Java -用户函数执行错误

PL/Java -用户函数执行错误
EN

Stack Overflow用户
提问于 2013-01-15 12:00:30
回答 1查看 381关注 0票数 1

我在Ubuntu上安装了pl/java:

代码语言:javascript
复制
sudo apt-get install postgresql-9.1-pljava-gcj

但是我遇到了一个问题,我认为是jar和pl/java之间的gcj/jdk 1.7不兼容。以下是在http://www.javacodegeeks.com/2012/10/introduction-to-postgresql-pljava.html指导下使用的步骤

代码语言:javascript
复制
select sqlj.install_jar('file:///home/me/temp/testJar.jar', 'sandbox', true);

select sqlj.set_classpath('public', 'sandbox');

CREATE FUNCTION public.hello(varchar) RETURNS varchar
AS 'sandbox.PLJava.hello'
LANGUAGE java;

在执行之前我们都很开心:

代码语言:javascript
复制
SELECT hello('world');

这会产生这个错误:

错误: java.lang.ClassFormatError: sandbox.PLJava (无法识别的类文件版本) SQL状态: XX000

jar是用标准的eclipse/导出到jar (jdk 1.7.0)制作的。

以前有人走过这条路吗?提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-04-21 10:29:36

正如您所说,这个问题是由您通过pl/java运行的JVM和您的java代码之间的不兼容性引起的。因此,如果您正在运行repos中的所有内容,并且您可以跟进您的发行版或从源代码进行编译,则这是一个打包问题。

如果你可以从源代码编译,这可能是目前最好的选择。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14330965

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档