• Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: Blocker Blocker
    • core
    • Synology DS212 / Linux, Embedded Java 7 or 8, latest Jenkins war

      I have followed this thread http://webselblog.wordpress.com/2011/08/20/howto-setup-jenkins-on-a-synology-ds1511/ to install Jenkins on a Synology box.

      Java is installed correctly and I can get Jenkins started. However it fails with a fatal error after a few minutes.

      Please see log files attached.

      Installed Java 7 Embedded ARMv5 Linux - Headless EABI, SoftFP ABI, Little Endian3

          [JENKINS-25402] Jenkins crashes on startup

          This is a JNA problem. I don't have access to the ARM platform which
          you have. If you want to help debug this, do the following:

          (1) Make sure that you have apache-ant installed
          (2) git clone https://github.com/twall/jna
          (3) Build jna and run the tests:
          cd jna
          ant

          (4) Report any problems to: https://github.com/twall/jna#community-and-support

          Craig Rodrigues added a comment - This is a JNA problem. I don't have access to the ARM platform which you have. If you want to help debug this, do the following: (1) Make sure that you have apache-ant installed (2) git clone https://github.com/twall/jna (3) Build jna and run the tests: cd jna ant (4) Report any problems to: https://github.com/twall/jna#community-and-support

          Michka,

          Can you build JNA and run the tests on ARM
          using the steps which I described, and provide
          the results? Is your ARM platform the same as the ARMv5Linux platform that Synology uses?

          Craig Rodrigues added a comment - Michka, Can you build JNA and run the tests on ARM using the steps which I described, and provide the results? Is your ARM platform the same as the ARMv5Linux platform that Synology uses?

          Houman Khorasani added a comment - - edited

          Thanks for the help.

          Yes DS 212 is a Marvell Kirkwood mv6282 1.6Ghz ARM (Marvell ARMADA 300) and fully ARMv5TE-compliant.
          http://forum.synology.com/wiki/index.php/What_kind_of_CPU_does_my_NAS_have
          http://www.marvell.com/embedded-processors/kirkwood/assets/88f6282-3_pb.pdf

          I have installed apache-ant and cloned jna as you suggested.

          Trying to build it got me this error:

          Unable to locate tools.jar. Expected to find it in /volume1/@appstore/java7/lib/tools.jar
          Buildfile: /volume1/public/jna/build.xml

          -enable-native:

          -dynamic-properties:

          BUILD FAILED
          /volume1/public/jna/build.xml:258: Can't find JNI headers (java.home=/volume1/@appstore/java7/jre)

          It seems I need the proper JDK for that.
          http://www.oracle.com/technetwork/java/javase/downloads/jdk8-arm-downloads-2187472.html

          But I don't know how to install this on a synology. The previous SE was supported through a community package, which I got from here: http://pcloadletter.co.uk/2011/08/23/java-package-for-synology/

          Houman Khorasani added a comment - - edited Thanks for the help. Yes DS 212 is a Marvell Kirkwood mv6282 1.6Ghz ARM (Marvell ARMADA 300) and fully ARMv5TE-compliant. http://forum.synology.com/wiki/index.php/What_kind_of_CPU_does_my_NAS_have http://www.marvell.com/embedded-processors/kirkwood/assets/88f6282-3_pb.pdf I have installed apache-ant and cloned jna as you suggested. Trying to build it got me this error: Unable to locate tools.jar. Expected to find it in /volume1/@appstore/java7/lib/tools.jar Buildfile: /volume1/public/jna/build.xml -enable-native: -dynamic-properties: BUILD FAILED /volume1/public/jna/build.xml:258: Can't find JNI headers (java.home=/volume1/@appstore/java7/jre) It seems I need the proper JDK for that. http://www.oracle.com/technetwork/java/javase/downloads/jdk8-arm-downloads-2187472.html But I don't know how to install this on a synology. The previous SE was supported through a community package, which I got from here: http://pcloadletter.co.uk/2011/08/23/java-package-for-synology/

          You need a full JDK to compile things.

          If you download the http://www.oracle.com/technetwork/java/javase/downloads/jdk8-arm-downloads-2187472.html
          and extract the tar.gz file, set the PATH to point to the right java
          binary, can you get it to work?

          Otherwise I recommend asking a Synology developer to help you.

          Craig Rodrigues added a comment - You need a full JDK to compile things. If you download the http://www.oracle.com/technetwork/java/javase/downloads/jdk8-arm-downloads-2187472.html and extract the tar.gz file, set the PATH to point to the right java binary, can you get it to work? Otherwise I recommend asking a Synology developer to help you.

          Houman Khorasani added a comment - - edited

          This is actually a great idea. I ended up removing the SE package to make sure I am pointing at the right Java JDK.

          export JAVA_HOME=/volume1/public/jdk1.8.0_06
          export PATH=${PATH}:${JAVA_HOME}/bin
          chmod -R 777 /volume1/public/jdk1.8.0_06

          when I type java it says:
          -ash: java: not found

          Funny part is:
          DiskStation> ls -l /volume1/public/jdk1.8.0_06/bin/java
          -rwxrwxrwx 1 admin users 5916 Nov 2 22:46 /volume1/public/jdk1.8.0_06/bin/java
          DiskStation> /volume1/public/jdk1.8.0_06/bin/java
          -ash: /volume1/public/jdk1.8.0_06/bin/java: not found

          So strange...

          I wonder if I am overlooking something. I will try to get in touch with support of Synology. Thanks for headsup though.

          Houman Khorasani added a comment - - edited This is actually a great idea. I ended up removing the SE package to make sure I am pointing at the right Java JDK. export JAVA_HOME=/volume1/public/jdk1.8.0_06 export PATH=${PATH}:${JAVA_HOME}/bin chmod -R 777 /volume1/public/jdk1.8.0_06 when I type java it says: -ash: java: not found Funny part is: DiskStation> ls -l /volume1/public/jdk1.8.0_06/bin/java -rwxrwxrwx 1 admin users 5916 Nov 2 22:46 /volume1/public/jdk1.8.0_06/bin/java DiskStation> /volume1/public/jdk1.8.0_06/bin/java -ash: /volume1/public/jdk1.8.0_06/bin/java: not found So strange... I wonder if I am overlooking something. I will try to get in touch with support of Synology. Thanks for headsup though.

          Looks like the default shell on Synology is ash.
          You might want to try something like:

          JAVA_HOME=/volume1/public/jdk1.8.0_06
          export JAVA_HOME
          PATH=${JAVA_HOME}/bin:${PATH}
          export PATH
          echo $PATH
          java -version

          Craig Rodrigues added a comment - Looks like the default shell on Synology is ash. You might want to try something like: JAVA_HOME=/volume1/public/jdk1.8.0_06 export JAVA_HOME PATH=${JAVA_HOME}/bin:${PATH} export PATH echo $PATH java -version

          Yes, you are right it is ash.

          BusyBox v1.16.1 (2014-10-20 22:22:41 CST) built-in shell (ash)
          Enter 'help' for a list of built-in commands.

          DiskStation> JAVA_HOME=/volume1/public/jdk1.8.0_06
          DiskStation> export JAVA_HOME
          DiskStation> PATH=${JAVA_HOME}/bin:${PATH}
          DiskStation> export PATH
          DiskStation> echo $PATH
          /volume1/public/jdk1.8.0_06/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin
          DiskStation> java -version
          -ash: java: not found
          DiskStation>

          But it still doesn't want to work. I raised a support request to Synology. Hopefully they come back to me.

          Houman Khorasani added a comment - Yes, you are right it is ash. BusyBox v1.16.1 (2014-10-20 22:22:41 CST) built-in shell (ash) Enter 'help' for a list of built-in commands. DiskStation> JAVA_HOME=/volume1/public/jdk1.8.0_06 DiskStation> export JAVA_HOME DiskStation> PATH=${JAVA_HOME}/bin:${PATH} DiskStation> export PATH DiskStation> echo $PATH /volume1/public/jdk1.8.0_06/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin DiskStation> java -version -ash: java: not found DiskStation> But it still doesn't want to work. I raised a support request to Synology. Hopefully they come back to me.

          Kohsuke Kawaguchi added a comment - Checking this with upstream

          Ben Creasy added a comment -

          houmie can you check to ensure that this still happens with recent versions? Pretty old at this point.

          Ben Creasy added a comment - houmie can you check to ensure that this still happens with recent versions? Pretty old at this point.

          Mark Waite added a comment -

          Jenkins no longer support Java 8

          Mark Waite added a comment - Jenkins no longer support Java 8

            imichka Michka Popoff
            houmie Houman Khorasani
            Votes:
            1 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: