Subject Re: [Firebird-Java] JayBird and FireBird locations
Author Alec Swan
Relying on environment variables is risky.

What if the end-user who installs our application has already installed a
version of Firebird different from the version the application was tested
with? I want the app to use the version of Firebird it was tested against
without affecting end-user working environment.

I gave up on keeping Firebird DLLs separate and copied all of them to the
working directory. But even then the app won't work without having the
FIREBIRD environment variable set to point to the working directory. Any


On Tue, Sep 29, 2009 at 1:06 AM, Roman Rokytskyy <roman@...> wrote:

> > I was able to get this to work by specifying three Java environment
> > variables as follows:
> >
> > <sysproperty key="*java.library.path*" path="*${dbs.bin}*"/>
> > <env key="*PATH*" path="*${dbs.bin}*"/> <!-- Must contain fbembed.dll,
> > icudt30.dll, icuin30.dll and icuuc30.dll -->
> > <env key="*FIREBIRD*" path="*${dbs.bin}*"/> <!-- Must contain remaining
> > Firebird libraries and config. files. -->
> >
> > Removing any of these settings breaks the configuration.
> I just managed to simply copy the jaybird21.dll to Firebird Embedded dir
> and start Java without any DLL specified.
> @echo off
> set JAVA_HOME=C:\Program Files (x86)\Java\jdk1.6.0-32bit
> set FIREBIRD=D:\Program Files\Firebird.2.1.3-embed
> echo %PATH%
> "%JAVA_HOME%\bin\java.exe" -classpath .;jaybird-full-2.1.6.jar %*
> (difference to yesterday' config is that path to FIREBIRD is not in
> double qoutes, seems to be some issue with Windows).
> So, with this setup I see no reason to change anything at all. You
> simply specify the FIREBIRD environment variable in Windows, add this
> directory to the path as well and do not forget to copy the
> jaybird21.dll to %FIREBIRD%. Any IDE will inherit the Windows
> environment and will work with Firebird Embedded.
> Did I miss something?
> Roman

[Non-text portions of this message have been removed]