自从我开始接触adempiere,就遇到了无法安装PL/java的问题:安装pgsql8.2就提示can not load library “D:/PostgreSQL/share/pljava/pljava.dll”,而当安装pgsql8.3时则提示说“遇到致命错误”,所以一直都是在ubuntu下安装adempiere。昨天下午重装win2k3后,终于发现症结之所在,特撰此文。
一、安装java
安装jdk时,默认是自动安装jre的,一般情况下jdk和jre会安装在不同的目录中,这也就是一些文章里所说的不能把jdk和jre安装在同一目录中。我一般会安装在某区的根目录下,例如:
jdk安装在D:\jdk150
jre安装在D:\jre150
二、系统变量
我之前的所有不成功均与此有关。
要设置的变量有三个,分别是:JAVA_HOME、JRE_HOME、PATH。有许多文章都说到要设置比这里更多的变量,比如说CLASSPATH,但是在没有设置此变量的情况下,一切正常。
JAVA_HOME这里是指jdk的安装目录D:\jdk150
JRE_HOME这里很好理解,是指jre的安装目录D:\jre150
PATH是最难的,简单地说,一是要包含jre的bin目录和jre的bin\client目录,二是不能以%JRE_HOME%的方式。这里我在PATH变量加入的是D:\jre150\bin;D:\jre150\bin\client;D:\PostgreSQL\bin。
三、安装pgsql
经过以上设置,pgsql 8.2的win环境安装包就可以成功地安装带有pl/java的环境了。而8.3版本的解决办法依然遥遥无期。