Uploaded image for project: 'Application Server 3  4  5 and 6'
  1. Application Server 3 4 5 and 6
  2. JBAS-7239

JBoss overwiting java.library.path when native libs available

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 6.0.0.M1
    • JBossAS-5.1.0.GA
    • None
    • None

      When using JBM1.4 my java.library.path was as follows:

      /opt/jdk1.6.0_16/jre/lib/i386/server:/opt/jdk1.6.0_16/jre/lib/i386:/opt/jdk1.6.0_16/jre/../lib/i386:/opt/berkeleydb/lib:/usr/java/packages/lib/i386:/lib:/usr/lib

      But now that I've changed to HornetQ it is this:

      /opt/jboss/bin/META-INF/lib/linux2/x86

      So I can't load my berkeley database anymore. The bug is due to behaviour when there are native libraries available for JBoss to load.

      The problem lies in the run.sh script:

      JBOSS_NATIVE_DIR="$JBOSS_HOME/bin/META-INF/lib/$JBOSS_NATIVE_SYS/$JBOSS_NATIVE_CPU"
      if [ -d "$JBOSS_NATIVE_DIR" ]; then
      if $cygwin ; then
      export PATH="$JBOSS_NATIVE_DIR:$PATH"
      JBOSS_NATIVE_DIR=`cygpath --path --windows "$JBOSS_NATIVE_DIR"`
      else
      if [ "x$LD_LIBRARY_PATH" = "x" ]; then
      LD_LIBRARY_PATH="$JBOSS_NATIVE_DIR"
      else
      LD_LIBRARY_PATH="$JBOSS_NATIVE_DIR:$LD_LIBRARY_PATH"
      fi
      export LD_LIBRARY_PATH
      fi
      if [ "x$JAVA_OPTS" = "x" ]; then
      JAVA_OPTS="-Djava.library.path=$JBOSS_NATIVE_DIR"
      else
      JAVA_OPTS="$JAVA_OPTS -Djava.library.path=$JBOSS_NATIVE_DIR"
      fi
      fi

      Where the JAVA_OPTS section should actually look like this:

      if [ "x$JAVA_OPTS" = "x" ]; then
      JAVA_OPTS="-Djava.library.path=$LD_LIBRARY_PATH"
      else
      JAVA_OPTS="$JAVA_OPTS -Djava.library.path=$LD_LIBRARY_PATH"
      fi

              rhn-engineering-mturk Mladen Turk
              rnicholson10 Ross Nicholson (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: