我在 Ubuntu 上安装了 pl/java:
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的指导下使用的步骤:
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;
我们很高兴直到执行:
SELECT hello('world');
这会产生此错误:
错误:java.lang.ClassFormatError:sandbox.PLJava(无法识别的类文件版本) SQL 状态:XX000
jar 是使用标准 eclipse/export to jar (jdk 1.7.0) 制作的。
以前有人走过这条路吗?提前致谢。