java.lang.ClassNotFoundException: com.google.common.collect.MapMaker

Bug #1313398 reported by Guilllermo Andrade B. on 2014-04-27
86
This bug affects 20 people
Affects Status Importance Assigned to Milestone
sikuli (Ubuntu)
High
Chad Miller

Bug Description

Launching sikuli-ide crash with this message :
sikuli-ide
[info] locale: en_US
Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/collect/MapMaker
 at org.python.core.PyType.fromClass(PyType.java:1280)
 at org.python.core.PyObject.<init>(PyObject.java:66)
 at org.python.core.PyBuiltinCallable.<init>(PyBuiltinCallable.java:21)
 at org.python.core.PyBuiltinMethod.<init>(PyBuiltinMethod.java:16)
 at org.python.core.PyBuiltinMethodNarrow.<init>(PyBuiltinMethodNarrow.java:24)
 at org.python.core.PyType$type___subclasses___exposer.<init>(Unknown Source)
 at org.python.core.PyType$PyExposer.<init>(Unknown Source)
 at org.python.core.PyType.<clinit>(PyType.java)
 at org.python.core.PyObject.<init>(PyObject.java:66)
 at org.python.core.PyBuiltinCallable.<init>(PyBuiltinCallable.java:21)
 at org.python.core.PyBuiltinMethod.<init>(PyBuiltinMethod.java:16)
 at org.python.core.PyBuiltinMethodNarrow.<init>(PyBuiltinMethodNarrow.java:24)
 at org.python.core.PyDataDescr$getset_descriptor___get___exposer.<init>(Unknown Source)
 at org.python.core.PyDataDescr$PyExposer.<init>(Unknown Source)
 at org.python.core.PyDataDescr.<clinit>(PyDataDescr.java)
 at org.python.core.PyBuiltinCallable$PyExposer.<init>(Unknown Source)
 at org.python.core.PyBuiltinCallable.<clinit>(PyBuiltinCallable.java)
 at org.python.core.PyObject$PyExposer.<init>(Unknown Source)
 at org.python.core.PyObject.<clinit>(PyObject.java)
 at org.python.util.PythonInterpreter.initialize(PythonInterpreter.java:57)
 at org.sikuli.script.ScriptRunner.init(ScriptRunner.java:32)
 at org.sikuli.script.ScriptRunner.<init>(ScriptRunner.java:28)
 at org.sikuli.script.ScriptRunner.getInstance(ScriptRunner.java:23)
 at org.sikuli.ide.SikuliIDE.<init>(SikuliIDE.java:664)
 at org.sikuli.ide.SikuliIDE.getInstance(SikuliIDE.java:138)
 at org.sikuli.ide.SikuliIDE.main(SikuliIDE.java:975)
Caused by: java.lang.ClassNotFoundException: com.google.common.collect.MapMaker
 at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
 at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
 at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
 ... 26 more

Fixed modifying /usr/bin/sikuli-ide adding path to java class:
/usr/share/maven-repo/com/google/guava/guava/debian/guava-debian.jar:/usr/share/maven-repo/org/jruby/ext/posix/jnr-posix/debian/jnr-posix-debian.jar:/usr/share/java/jaffl.jar

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in sikuli (Ubuntu):
status: New → Confirmed
Chad Miller (cmiller) wrote :

java.lang.ClassNotFoundException: com.google.common.collect.MapMaker

Adding /usr/share/maven-repo/com/google/guava/guava/debian/guava-debian.jar

java.lang.ClassNotFoundException: org.jruby.ext.posix.POSIXHandler

Adding /usr/share/maven-repo/org/jruby/ext/posix/jnr-posix/debian/jnr-posix-debian.jar

java.lang.ClassNotFoundException: com.kenai.jaffl.struct.Struct

Adding /usr/share/maven-repo/org/jruby/extras/jaffl/debian/jaffl-debian.jar

Changed in sikuli (Ubuntu):
status: Confirmed → In Progress
assignee: nobody → Chad Miller (cmiller)
importance: Undecided → High
yilativs (yilativs) wrote :

same bug on 14.04

Vitoria (vmfvmf) wrote :

How do i solve it?

Arne Bernin (arne-alamut) wrote :

solve: edit /usr/bin/sikuli-ide

as Guillermo suggested, add

/usr/share/maven-repo/com/google/guava/guava/debian/guava-debian.jar:/usr/share/maven-repo/org/jruby/ext/posix/jnr-posix/debian/jnr-posix-debian.jar:/usr/share/java/jaffl.jar

inside the -cp string (beware of the ":")

Arne Bernin (arne-alamut) wrote :

and add the same to /usr/bin/sikuli

martonmiklos (martonmiklosqdev) wrote :

I have done the suggested modifications in the sikuli and sikuli-ide but both executables are exiting without any results.

mm@lapos:~$ sikuli-ide
[info] locale: en_US
mm@lapos:~$

martonmiklos (martonmiklosqdev) wrote :

To answer my question and document it to others:
I had to install openjdk-7-jre
And switch to that by issuing the sudo update-alternatives --config java command.

Prabakaran (praba230890) wrote :

Arne Bernin's solution works fine for me in Ubuntu 14.04

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers