【问题标题】:Installing PL/Java on MAC在 MAC 上安装 PL/Java
【发布时间】:2011-07-24 05:37:03
【问题描述】:

我在 Mac 上安装 Pl/Java 时确实遇到了问题,我们将不胜感激。

我将在此处描述我按照README 执行的确切步骤,但我仍然遇到一些我无法解决的错误。

(1) 我已经下载了这个版本:pljava-i686-pc-linux-gnu-pg9.0-1.4.2

(2) 我在目录中找到了三个文件:pljava.jardeploy.jarpljava.so

(3) 我已经把两个 .jars 放在里面了:/Library/PostgreSQL/9.0/lib

(4) 我已经把 .so 放在里面了:/Library/PostgreSQL/9.0/data

(5) 我将postgresql.conf修改如下:

dynamic_library_path = '$libdir'
custom_variable_classes = 'pljava'
pljava.classpath = '/Library/PostgreSQL/9.0/lib/pljava.jar’

(6) 我也试过了:

dynamic_library_path = '$libdir:/Library/PostgreSQL/9.0/lib/'    (as well as...)
dynamic_library_path = '$libdir:/Library/PostgreSQL/9.0/data/'

(7) 然后我尝试运行:

Select sqlj.install_jar('/Software/Libraries/test_trigger.jar', 'samples', false);
Select sqlj.set_classpath(‘public’, ‘samples’);

虽然,我不断收到此错误:

WARNING:  java.lang.NoSuchMethodError: Method org.postgresql.pljava.internal.Portal._fetch(JZI)I not found

ERROR:  Unable to register native methods

********** Error **********

ERROR: Unable to register native methods
SQL state: XX000

【问题讨论】:

  • 我遇到的另一个问题是,README 调用导出:export LD_LIBRARY_PATH=$JAVA_HOME/jre/lib/i386:$JAVA_HOME/jre/lib/i386/client. ... MAC 等效项是什么?
  • 也许这里的 cmets 会有所帮助:comments.gmane.org/gmane.comp.db.postgresql.pljava/623
  • 你是如何安装 PostgreSQL 的?
  • 您需要专门为 Mac 构建 pljava。你不能使用linux的。

标签: java postgresql pljava


【解决方案1】:

这听起来像是一个问题在于没有加载正确的 .jar。您在 cmets 中提到,您在指定加载模块的位置的适当环境变量方面也存在问题。这实际上可能是您的主要问题。看起来等效的环境变量是DYLD_LIBRARY_PATH,尽管您可以通过查看man dyld 获得更多选项,显然如果您加载了错误的.so 或.jar,您将收到类似这样的错误。

【讨论】:

    猜你喜欢
    • 2017-03-16
    • 2020-09-04
    • 1970-01-01
    • 1970-01-01
    • 2014-08-12
    • 1970-01-01
    • 1970-01-01
    • 2011-10-25
    • 1970-01-01
    相关资源
    最近更新 更多