You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by "Walzer, Thomas" <th...@integratix.net> on 2015/07/28 14:41:26 UTC

SM 6.0.0 wrapper/service: could not find the main class

Hi,

I am trying to get SMX 6.0.0 running as a service on Windows Server 2008 R2. Java 1.7.0_51
Everything works ok until I start the wrapper. It fails with "Could not find the main class: org.apache.karaf.wrapper.internal.Main.  Program will exit."
Servicemix starts fine via servicemix.bat (added java_home to setenv.bat).
Any ideas on how to progress from here?

Cheers, Thomas.

Here is what I did:

karaf@root>feature:install wrapper
karaf@root>wrapper:install -s manual -n smx6 -d smx6
Creating file: G:\prog\prod\apache-servicemix-6.0.0\bin\smx6-wrapper.exe
Creating file: G:\prog\prod\apache-servicemix-6.0.0\bin\..\etc\smx6-wrapper.conf
Creating file: G:\prog\prod\apache-servicemix-6.0.0\bin\smx6-service.bat
Creating file: G:\prog\prod\apache-servicemix-6.0.0\lib\wrapper.dll
Creating file: G:\prog\prod\apache-servicemix-6.0.0\lib\karaf-wrapper.jar
Creating file: G:\prog\prod\apache-servicemix-6.0.0\lib\karaf-wrapper-main.jar

Setup complete.  You may wish to tweak the JVM properties in the wrapper configuration file:
        G:\prog\prod\apache-servicemix-6.0.0\bin\..\etc\smx6-wrapper.conf
before installing and starting the service.


MS Windows system detected:
To install the service, run:
  C:> G:\prog\prod\apache-servicemix-6.0.0\bin\smx6-service.bat install

Once installed, to start the service run:
  C:> net start "smx6"

Once running, to stop the service run:
  C:> net stop "smx6"

Once stopped, to remove the installed the service run:
  C:> G:\prog\prod\apache-servicemix-6.0.0\bin\smx6-service.bat remove


----
G:\prog\prod\apache-servicemix-6.0.0\bin>set JAVA_HOME=g:/prog/prod/java/jdk1.7.0_51

G:\prog\prod\apache-servicemix-6.0.0\bin>G:\prog\prod\apache-servicemix-6.0.0\bin\smx6-service.bat install
wrapper  | smx6 installed.

G:\prog\prod\apache-servicemix-6.0.0\bin>


---
when I turn on debug in the wrapper.conf, I see that the JAVA_HOME is not correct.
---
STATUS | wrapper  | 2015/07/28 14:36:29 | Launching a JVM...
DEBUG  | wrapper  | 2015/07/28 14:36:29 | command: "D:\Prog\Prod\Java\jdk1.6.0_45\bin\java" -Dkaraf.home="G:\prog\prod\apache-servicemix-6.0.0" -Dkaraf.base="G:\prog\prod\apache-servicemix-6.0.0" -Dkaraf.data="G:\prog\prod\apache-servicemix-6.0.0\data" -Dkaraf.etc="G:\prog\prod\apache-servicemix-6.0.0\bin\..\etc" -Dcom.sun.management.jmxremote -Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true -Djava.endorsed.dirs="D:\Prog\Prod\Java\jdk1.6.0_45/jre/lib/endorsed;D:\Prog\Prod\Java\jdk1.6.0_45/lib/endorsed;G:\prog\prod\apache-servicemix-6.0.0/lib/endorsed" -Djava.ext.dirs="D:\Prog\Prod\Java\jdk1.6.0_45/jre/lib/ext;D:\Prog\Prod\Java\jdk1.6.0_45/lib/ext;G:\prog\prod\apache-servicemix-6.0.0/lib/ext" -Xmx512m -Djava.library.path="G:\prog\prod\apache-servicemix-6.0.0/lib/" -classpath "G:\prog\prod\apache-servicemix-6.0.0/lib/karaf-wrapper.jar;G:\prog\prod\apache-servicemix-6.0.0/lib/karaf.jar" -Dwrapper.key="Oadi7LVjRD9lJfF8" -Dwrapper.port=32003 -Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999 -Dwrapper.debug="TRUE" -Dwrapper.pid=21096 -Dwrapper.version="3.2.3" -Dwrapper.native_library="wrapper" -Dwrapper.service="TRUE" -Dwrapper.cpu.timeout="10" -Dwrapper.jvmid=5 org.apache.karaf.wrapper.internal.Main
DEBUG  | wrapper  | 2015/07/28 14:36:29 | JVM started (PID=23280)
INFO   | jvm 5    | 2015/07/28 14:36:29 | java.lang.NoClassDefFoundError: org/apache/karaf/wrapper/internal/Main
INFO   | jvm 5    | 2015/07/28 14:36:29 | Caused by: java.lang.ClassNotFoundException: org.apache.karaf.wrapper.internal.Main
INFO   | jvm 5    | 2015/07/28 14:36:29 | 	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
INFO   | jvm 5    | 2015/07/28 14:36:29 | 	at java.security.AccessController.doPrivileged(Native Method)
INFO   | jvm 5    | 2015/07/28 14:36:29 | 	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
INFO   | jvm 5    | 2015/07/28 14:36:29 | 	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
INFO   | jvm 5    | 2015/07/28 14:36:29 | 	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
INFO   | jvm 5    | 2015/07/28 14:36:29 | 	at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
INFO   | jvm 5    | 2015/07/28 14:36:30 | Could not find the main class: org.apache.karaf.wrapper.internal.Main.  Program will exit.
INFO   | jvm 5    | 2015/07/28 14:36:30 | Exception in thread "main" 
DEBUG  | wrapper  | 2015/07/28 14:36:30 | JVM process exited with a code of 1, setting the wrapper exit code to 1.
ERROR  | wrapper  | 2015/07/28 14:36:30 | JVM exited while loading the application.
DEBUG  | wrapper  | 2015/07/28 14:36:30 | JVM was only running for 1 seconds leading to a failed restart count of 5.
FATAL  | wrapper  | 2015/07/28 14:36:30 | There were 5 failed launches in a row, each lasting less than 300 seconds.  Giving up.
FATAL  | wrapper  | 2015/07/28 14:36:30 |   There may be a configuration problem: please check the logs.
STATUS | wrapper  | 2015/07/28 14:36:30 | <-- Wrapper Stopped

---
Then I replace JAVA_HOME with the complete path in the wrapper.conf, still no luck:

DEBUG  | wrapper  | 2015/07/28 14:39:51 | command: "g:\prog\prod\java\jdk1.7.0_51\bin\java" -Dkaraf.home="G:\prog\prod\apache-servicemix-6.0.0" -Dkaraf.base="G:\prog\prod\apache-servicemix-6.0.0" -Dkaraf.data="G:\prog\prod\apache-servicemix-6.0.0\data" -Dkaraf.etc="G:\prog\prod\apache-servicemix-6.0.0\bin\..\etc" -Dcom.sun.management.jmxremote -Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true -Djava.endorsed.dirs="g:/prog/prod/java/jdk1.7.0_51/jre/lib/endorsed;g:/prog/prod/java/jdk1.7.0_51/lib/endorsed;G:\prog\prod\apache-servicemix-6.0.0/lib/endorsed" -Djava.ext.dirs="g:/prog/prod/java/jdk1.7.0_51/jre/lib/ext;g:/prog/prod/java/jdk1.7.0_51/lib/ext;G:\prog\prod\apache-servicemix-6.0.0/lib/ext" -Xmx512m -Djava.library.path="G:\prog\prod\apache-servicemix-6.0.0/lib/" -classpath "G:\prog\prod\apache-servicemix-6.0.0/lib/karaf-wrapper.jar;G:\prog\prod\apache-servicemix-6.0.0/lib/karaf.jar" -Dwrapper.key="YLwVG5tTnXYBp3LA" -Dwrapper.port=32003 -Dwrapper.jvm.port.min=31000 -Dwrapper.jvm.port.max=31999 -Dwrapper.debug="TRUE" -Dwrapper.pid=25512 -Dwrapper.version="3.2.3" -Dwrapper.native_library="wrapper" -Dwrapper.service="TRUE" -Dwrapper.cpu.timeout="10" -Dwrapper.jvmid=1 org.apache.karaf.wrapper.internal.Main
DEBUG  | wrapper  | 2015/07/28 14:39:51 | JVM started (PID=21604)
INFO   | jvm 1    | 2015/07/28 14:39:51 | Error: Could not find or load main class org.apache.karaf.wrapper.internal.Main
DEBUG  | wrapper  | 2015/07/28 14:39:52 | JVM process exited with a code of 1, setting the wrapper exit code to 1.
ERROR  | wrapper  | 2015/07/28 14:39:52 | JVM exited while loading the application.
DEBUG  | wrapper  | 2015/07/28 14:39:52 | JVM was only running for 1 seconds leading to a failed restart count of 1.
DEBUG  | wrapper  | 2015/07/28 14:39:52 | Waiting 5 seconds before launching another JVM.