Question
Capgemini
IN
Last activity: 14 Oct 2016 10:50 EDT
postgresql 9.3 could not load library pljava.dll %1 is not valid win32 application
I am installing Pega 7.2.1 on Apache Tomcat and Postgresql 9.3 version. As per the instructions had installed postgresql 9.3.5 x64.exe.
Copied the pljava.jar and pljava.dll file from the resource kit to postgres lib directory. Also updated the postgresql.conf file as instructed.
On a windows 2008R2 server 64 bit and jdk 1.7.
When I try to run the install sql , I keep getting an error "ould not load library pljava.dll %1 is not valid win32 application". I did try both 32 bit and 64 bit Postgresql but in all cases get the same error.
Can anyone advise me how to fix this.
-
Like (0)
-
Share this page Facebook Twitter LinkedIn Email Copying... Copied!
Virtusa IT Consulting
AE
The error suggests that pljava.dll and pljava.jar were not deployed or your system is not allowing you to install .dll files. Please check you should have admin rights and avoid installing postgresql in C:/Program files location.
Virtusa IT Consulting
AE
Did you happen to check this article? https://community.pega.com/support/support-articles/pljava-postgresql-could-not-load-library-function-not-exist
Capgemini
IN
Hi Baigh,
Thanks for your response. But I checked the article and actually followed it step by step.
I am stuck when i run this
java -classpath "<Postgres JDBC.jar path>;<pljava/deploy.jar path>" org.postgresql.pljava.deploy.Deployer -install -database <dbname> -user <user name> -pass <user password>
and that is when i get the exception that could not library pljava.dll %1 is not a valid win32 application.
Thanks & regards
Parijat
Pegasystems Inc.
IN
Postgres 9.3 needs MSVCR 2013 installed. You would need to use dependency walker to see what pljava.dll is looking for. This will tell which version of MSVCR they need for sure.
http://www.dependencywalker.com/
PG 9.1 -> Visual Studio 2008 à MSVCR.DLL (I think)
PG 9.2 -> Visual Studio 2010 à MSVCR110.DLL
PG 9.3 -> Visual Studio 2013 à MSVCR120.DLL
PG 9.4 -> Visual Studio 2013 à MSVCR120.DLL
Pegasystems Inc.
US
Parijat,
I believe you may need MSVCR 2013 installed for Postgres 9.3. The best way to tell is to use dependency walker (freeware) to look at pljava.dll and see which MSVCR DLL it is dependent on.
If you see a dependency on MSVCR120.dll, then you need MSVCR 2013 installed. If the dependency is for MSVCR110.dll, then you need MSVCR 2010. If the dependency is for MSVCR.dll, then you need MSVCR 2008.
MSVCR = Microsoft Visual C++ Redistributables
I attached an example of what you see in dependency walker for reference.
Capgemini
IN
Thanks a ton for this reply it shows MSVRC100.dll in the dependency seems it is looking for 2010 visual C++ distributables. Let me try installing the same and see if it works but again thanks for the suggestion.
Capgemini
IN
Hi All,
I am still stuck with %1 is not valid win32 application. I am installing postgresql-9.4.9-2-windows-x64 with jdk 1.8 and jdbc postgresql-9.4-1202.jdbc42.jar on windows 2008 sp2 server with MSVC 2013. Attached is the dependency walker scrrenshot.
I had done all the steps as mentioned in the resource kit readme and trying to install Pega 7.2.1 licensed software. Have copied the pljava.dll and pljava.jar into postgres lib folder.
It would be hugely helpful if someone can send me detailed steps for installing and any fixes if possible.
Capgemini
IN
to add i have installed postgresql on C:\\Program Files directory.