Public bug reported:
---Problem Description---
jsvc, an application to launch a java daemon, on ppc64 and ppc64le looks for
jvm.cfg and JVM shared objects in the wrong path. Be it used with IBM Java or
OpenJDK (where the problem was first encountered), there is no dir called
power64 or power64le. Instead ppc64 and ppc64le are used. In doing so, it fails
with "Cannot find any VM in Java Home"
---uname output---
Linux vm 4.4.0-47-generic #68-Ubuntu SMP Wed Oct 26 19:38:24 UTC 2016 ppc64le
ppc64le ppc64le GNU/Linux
Machine Type = pKVM
---Debugger---
A debugger is not configured
---Steps to Reproduce---
# apt-get install libcommons-daemon-java jsvc
# cat MyClass.java
public class MyClass {
public void init(String[] args) {
System.out.println("Init...");
}
public void start() {
System.out.println("Start...");
}
public void stop() {
System.out.println("Stop...");
}
public void destroy() {
System.out.println("Destroy...");
}
}
# javac MyClass.java
# jar cvf my.jar MyClass.class
# sudo jsvc -debug -user root -java-home
/usr/lib/jvm/java-1.8.0-openjdk-ppc64el -cp
/usr/share/java/commons-daemon.jar:/root/my.jar MyClass -start
Then:
+-- DUMPING PARSED COMMAND LINE ARGUMENTS --------------
| Detach: True
| Show Version: No
| Show Help: No
| Check Only: Disabled
| Stop: False
| Wait: 0
| Run as service: No
| Install service: No
| Remove service: No
| JVM Name: "null"
| Java Home: "/usr/lib/jvm/java-1.8.0-openjdk-ppc64el"
| PID File: "/var/run/jsvc.pid"
| User Name: "root"
| Extra Options: 1
| "-Djava.class.path=/usr/share/java/commons-daemon.jar:/root/my.jar"
| Class Invoked: "MyClass"
| Class Arguments: 1
| "-start"
+-------------------------------------------------------
No need to change user to 'root'!
User 'root' validated
Attempting to locate Java Home in /usr/lib/jvm/java-1.8.0-openjdk-ppc64el
Attempting to locate VM configuration file
/usr/lib/jvm/java-1.8.0-openjdk-ppc64el/jre/lib/jvm.cfg
Attempting to locate VM configuration file
/usr/lib/jvm/java-1.8.0-openjdk-ppc64el/lib/jvm.cfg
Attempting to locate VM configuration file
/usr/lib/jvm/java-1.8.0-openjdk-ppc64el/jre/lib/powerpc64le/jvm.cfg
Attempting to locate VM configuration file
/usr/lib/jvm/java-1.8.0-openjdk-ppc64el/lib/powerpc64le/jvm.cfg
VM configuration file not found
Attempting to locate VM library
/usr/lib/jvm/java-1.8.0-openjdk-ppc64el/jre/lib/powerpc64le/classic/libjvm.so
Attempting to locate VM library
/usr/lib/jvm/java-1.8.0-openjdk-ppc64el/jre/lib/powerpc64le/server/libjvm.so
Attempting to locate VM library
/usr/lib/jvm/java-1.8.0-openjdk-ppc64el/jre/lib/powerpc64le/client/libjvm.so
Attempting to locate VM library
/usr/lib/jvm/java-1.8.0-openjdk-ppc64el/jre/lib/powerpc64le/libjvm.so
...
Dear maintainer,
The fix is already upstream (backport is trivial):
https://fisheye6.atlassian.com/rdiff/commons?csid=1771757&u&N
The upstream ticket for reference:
https://issues.apache.org/jira/browse/DAEMON-358
** Affects: commons-daemon (Ubuntu)
Importance: Undecided
Assignee: Taco Screen team (taco-screen-team)
Status: New
** Tags: architecture-ppc64le bugnameltc-149188 severity-medium
targetmilestone-inin1610
** Tags added: architecture-ppc64le bugnameltc-149188 severity-medium
targetmilestone-inin1610
** Changed in: ubuntu
Assignee: (unassigned) => Taco Screen team (taco-screen-team)
** Package changed: ubuntu => commons-daemon (Ubuntu)
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1645745
Title:
jsvc fails to find JVM jvm.cfg file and shared objects due to wrong
path
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/commons-daemon/+bug/1645745/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs