Commons Daemon
  1. Commons Daemon
  2. DAEMON-247

[debug] ( javajni.c:195 ) Invalid RuntimeLib should be a warning or error?


    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.0.9
    • Fix Version/s: 1.0.11
    • Component/s: Procrun
    • Labels:
    • Environment:

      Windows Server 2008 Service Pack 2, Java 6 update 31 and 7 update 3 installed on same machine.
      Tomcat 7.0.26 (which uses Daemon 1.0.9).


      When running Tomcat as a service under Windows (thus using Daemon/procrun), if you mess up the Java Virtual Machine path in the service configurator, it defaults to the JAVA_HOME JRE, which I suppose is okay (but can wreak havoc when you have multiple Java versions installed), except that it doesn't warn you about it. It tells you about it through a DEBUG message, instead, so you have to actually increase the logging detail and wade through more messages to even realize it happened:

      [2012-03-20 16:32:41] [debug] ( prunsrv.c:1644) Commons Daemon procrun log initialized
      [2012-03-20 16:32:41] [info] ( prunsrv.c:1648) Commons Daemon procrun ( 64-bit) started
      [2012-03-20 16:32:41] [info] ( prunsrv.c:1561) Running 'gr01in01tc70' Service...
      [2012-03-20 16:32:41] [debug] ( prunsrv.c:1345) Inside ServiceMain...
      [2012-03-20 16:32:41] [info] ( prunsrv.c:1089) Starting service...
      [2012-03-20 16:32:41] [debug] ( javajni.c:195 ) Invalid RuntimeLib 'D:\Java\jdk6\jre\bin\server\jvm.dll'
      [2012-03-20 16:32:41] [debug] ( javajni.c:197 ) Using Jre JavaHome 'C:\Program Files\Java\jre7'
      [2012-03-20 16:32:41] [debug] ( javajni.c:206 ) loading jvm 'C:\Program Files\Java\jre7\bin\server\jvm.dll'

      After correcting the JVM path:

      [2012-03-20 16:46:13] [debug] ( prunsrv.c:1644) Commons Daemon procrun log initialized
      [2012-03-20 16:46:13] [info] ( prunsrv.c:1648) Commons Daemon procrun ( 64-bit) started
      [2012-03-20 16:46:13] [info] ( prunsrv.c:1561) Running 'gr01in01tc70' Service...
      [2012-03-20 16:46:13] [debug] ( prunsrv.c:1345) Inside ServiceMain...
      [2012-03-20 16:46:13] [info] ( prunsrv.c:1089) Starting service...
      [2012-03-20 16:46:13] [debug] ( javajni.c:206 ) loading jvm 'C:\Program Files\Java\jre6\bin\server\jvm.dll'

      IMO, this message should be a warning or even an error (preferable) so that server admins know right off the bat that they've done something wrong. Otherwise bad things might happen.

      Whether or not it should quit instead of defaulting to the system default JRE is a different discussion, but I think the message should at least be changed to a warning or an error.


        No work has yet been logged on this issue.


          • Assignee:
            Mladen Turk
            Nick Williams
          • Votes:
            0 Vote for this issue
            1 Start watching this issue


            • Created:

              Time Tracking

              Original Estimate - 1h
              Remaining Estimate - 1h
              Time Spent - Not Specified
              Not Specified