Gustavo Romero created DAEMON-358:
-------------------------------------
Summary: PPC64: svc fails to find JVM jvm.cfg file and shared
objects due to wrong path
Key: DAEMON-358
URL: https://issues.apache.org/jira/browse/DAEMON-358
Project: Commons Daemon
Issue Type: Bug
Components: Jsvc
Affects Versions: 1.0.13
Environment: Linux ppc64_machine 3.10.0-505.el7.ppc64le #1 SMP Tue Sep
6 11:09:32 EDT 2016 ppc64le ppc64le ppc64le GNU/Linux, RHEL 7.3
Reporter: Gustavo Romero
Priority: Critical
On ppc64 and ppc64le archs jsvc 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"
Contact Information = [email protected]
---uname output---
Linux gromero18 3.10.0-505.el7.ppc64le #1 SMP Tue Sep 6 11:09:32 EDT 2016
ppc64le ppc64le ppc64le GNU/Linux
Machine Type = pKVM
---Debugger---
A debugger is not configured
---Steps to Reproduce---
yum install apache-commons-daemon-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
# /bin/jsvc -debug -user root -java-home
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-2.b15.el7_3.ppc64le -cp
/usr/share/java/apache-commons-daemon.jar:/root/my.jar MyClass -start
Then:
Attempting to locate Java Home in
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-2.b15.el7_3.ppc64le
Attempting to locate VM configuration file
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-2.b15.el7_3.ppc64le/jre/lib/jvm.cfg
Attempting to locate VM configuration file
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-2.b15.el7_3.ppc64le/lib/jvm.cfg
Attempting to locate VM configuration file
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-2.b15.el7_3.ppc64le/jre/lib/powerpc64le/jvm.cfg
Attempting to locate VM configuration file
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-2.b15.el7_3.ppc64le/lib/powerpc64le/jvm.cfg
VM configuration file not found
...
Java Version: openjdk version "1.8.0_111" OpenJDK Runtime Environment (build
1.8.0_111-b15) OpenJDK 64-Bit Server VM (build 25.111-b15, mixed mode)
Userspace rpm:
apache-commons-daemon-jsvc-1.0.13-6.el7.ppc64le.rpm
The userspace tool has the following bit modes: 64-bit
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)