commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jack Cai (JIRA)" <>
Subject [jira] Commented: (DAEMON-102) JVM + System PATH environment = Version Skew
Date Tue, 25 Nov 2008 14:13:44 GMT


Jack Cai commented on DAEMON-102:

Actually, if using jvm mode and no jvm.dll path is specified, prunsrv will read from registry
HKEY_LOCAL_MACHINE\\SOFTWARE\\JavaSoft\\Java Runtime Environment or \\Java Development Kit.

Otherwise, if using java mode and no JAVA_HOME environment variable is specified, prunsrv
will also read from the same registry as above. It ignores the JavaHome parameter right now.
I'll submit a patch to fix this later on.

> JVM + System PATH environment = Version Skew
> --------------------------------------------
>                 Key: DAEMON-102
>                 URL:
>             Project: Commons Daemon
>          Issue Type: Bug
>    Affects Versions: 1.0 Alpha, 1.0, 1.0.1
>         Environment: Windows, All
>            Reporter: Bob Kerns
> When Tomcat 6 is installed, it prompts you for the location of the JVM you wish to use.
> However, it neither computes the necessary value for the PATH environment variable to
make that JVM work, nor prompts you for it.
> Instead, it depends on the system's PATH environment variable happening to have on it
the JRE's bin directory.
> If, however, it does not have a JRE bin directory, or it points to a DIFFERENT JRE --
we have a problem.
> Basically, this is a formula for very mysterious failure. When the System path changed,
due to a change in JVM for other purposes, Tomcat 6's service launcher mysteriously became
unable to load the JVM.
> My workaround was to add the Environment configuration parameter with PATH=<a valid
path>. (I did this via editing the registry; presumably I could have done it from the command
line. But the GUI does NOT provide a way to set this!)
> It seems wrong to always embed the ENTIRE pah. Perhaps when launching a JVM it should
silently do a SetDllDirectory to add the parent directory. This would ensure that it would
find the CORRECT dlls. The current behavior does NOT find the correct DLLs unless (and while)
the system PATH variable points to them.
> This makes the behavior consonant with what running the JVM from java.exe does, because
the .exe's directory (same as the parent of the jvm.dll's directory) is automatically included
in the DLL search path, earlier than the PATH variable.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message