Sikuli X fails to execute scripts via NetBeans, Eclipse or Jython using sikuli-script.jar

Bug #696691 reported by surfdork

This bug report was converted into a question: question #140743: Sikuli X fails to execute scripts via NetBeans, Eclipse or Jython using sikuli-script.jar.

10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
SikuliX
Invalid
Undecided
Unassigned

Bug Description

You may find yourself in this situation, when using sikuli-script.jar standalone in other environments than just together with Sikuli-IDE:
- using other IDE's like Netbeans or Eclipse
- using plain Jython to run your scripts
- using Java.exe and sikuli-script.jar to run your scripts

and try to just port your solution from 10.2

--- for 64-Bit Systems (Windows/Linux) and mixed 64-Bit/32-Bit Systems (Windows/Linux) the following solution might not help (still under investigation)

--- This solution applies to:
OS Win7 starter x32
OS Win 7 ultimate x32
(and probably all 32-bit Windows)

Mac: special adjustments needed (if interested contact RaiMan)
Linux: similar to Windows (but you need to install openCV 2.1 on your own)

--- Description:
-- User unable to run sikuli scripts when using Sikuli X component sikuli-script.jar standalone (referenced in Java Class Path and/or Python Path (sys.path))
-- Error messages say that there are problems finding/loading dependent libraries, mainly with reference to
C:\Users\...\AppData\Local\Temp\tmplib\Win32Util.dll
-- in the error trace back you find
at com.wapmx.nativeutils.jniloader.NativeLoader.loadLibrary(NativeLoader.java:44)

see an example error log below.

--- How to get it going?
-- take care, that any references to 10.2 components are removed in your environment
-- have the following entries in your system path (Windows: System settings -> advanced -> environment variables)
path-to-your-Sikuli-X\libs
path-to-your-Java\jre6\bin
(e.g. add C:\Program Files\Sikuli X\libs;C:\Program Files\Java\jre6\bin)
adjust these path specifications to your environment

--- additional things that might be helpful:
-- when using an unjared version of sikuli-script.jar, it might be helpful, to put this reference in the system path too:
path-to-your-unjared-sikuli-script.jar\Lib
-- be aware, that the Sikuli java classes now live at org.sikuli.script (if you are working on the java level)

--- Here an example error log:
VDictProxy loaded.
Traceback (most recent call last):
  File "C:\Users\Mike\Documents\NetBeansProjects\NewPythonProject\src\newpythonproject.py", line 4, in <module>
    from sikuli.Sikuli import *
  File "C:\UnjarSikuliScript\Lib\sikuli\Sikuli.py", line 183, in <module>
    initSikuli()
  File "C:\UnjarSikuliScript\Lib\sikuli\Sikuli.py", line 178, in initSikuli
    dict['SCREEN'] = Screen()
  File "C:\UnjarSikuliScript\Lib\sikuli\Screen.py", line 16, in __init__
    r = JScreen().getBounds()
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)

        at java.lang.ClassLoader.loadLibrary0(Unknown Source)

        at java.lang.ClassLoader.loadLibrary(Unknown Source)

        at java.lang.Runtime.load0(Unknown Source)

        at java.lang.System.load(Unknown Source)

        at com.wapmx.nativeutils.jniloader.NativeLoader.loadLibrary(NativeLoader.java:44)

        at org.sikuli.script.Win32Util.<clinit>(Win32Util.java:14)

        at java.lang.Class.forName0(Native Method)

        at java.lang.Class.forName(Unknown Source)

        at org.sikuli.script.Env.getOSUtil(Env.java:82)

        at org.sikuli.script.ScreenHighlighter.init(ScreenHighlighter.java:174)

        at org.sikuli.script.ScreenHighlighter.<init>(ScreenHighlighter.java:287)

        at org.sikuli.script.Screen.initBounds(Screen.java:96)

        at org.sikuli.script.Screen.<init>(Screen.java:108)

        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)

        at java.lang.reflect.Constructor.newInstance(Unknown Source)

        at org.python.core.PyReflectedConstructor.constructProxy(PyReflectedConstructor.java:163)

java.lang.UnsatisfiedLinkError: java.lang.UnsatisfiedLinkError: C:\Users\Mike\AppData\Local\Temp\tmplib\Win32Util.dll: Can't find dependent libraries

Revision history for this message
Tsung-Hsiang Chang (vgod) wrote :

Please check if you have the path to the JRE\bin in the environment variable PATH.

RaiMan (raimund-hocke)
summary: - Sikuli X fails to execute scripts via Net Beans
+ Sikuli X fails to execute scripts via NetBeans, Eclipse or Jython using
+ sikuli-script.jar
RaiMan (raimund-hocke)
description: updated
Changed in sikuli:
status: New → Confirmed
Revision history for this message
RaiMan (raimund-hocke) wrote :

To be able to link it to the request bug

Changed in sikuli:
status: Confirmed → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.