X-1.0rc2: IDE: Windows: crashes on capture --- newest JRE and specific grafics equipement (e.g. Intel based)

Bug #734682 reported by RaiMan
30
This bug affects 5 people
Affects Status Importance Assigned to Milestone
SikuliX
Confirmed
Undecided
Unassigned

Bug Description

**************** possible solution
It might help, to upgrade to the newest JRE version (it seems that beginning with version 24 it might work)

-----------------

problem situation -------------------

Sun modified the internals of JRE 1.6 somewhere around Update 10 to enable "Direct Draw" by default. This causes the Sikuli IDE to be unusable on many machines with particular graphic chipsets - particularly those manufactured by Intel. We have submitted an inquiry to to the developers to try and figure out a "work around" as their stated workaround:

<app> -Dsun.java2d.noddraw=true

does not revert the behavior to the correct functionality that existed prior to the change.

--- J. Mailshredder said on 2011-03-11
--------------------------------------------------------

I have used earlier versions of Sikuli successfully... But I just recently installed Sikuli X-1.0rc2 on Windows Vista 32-bit (a fresh, first time install) using the Windows .EXE installer and I am seeing behavior similar to that mentioned on a couple of "bug reports". The IDE disappears during capture.

It occurs using both a single and dual-monitor configuration.

Even though the IDE disappears, the associated process (javaw.exe) continues to run.

Sikuli was launched using the ".bat" process. ("C:\Program Files\Sikuli X\Sikuli-IDE-w.bat")

I noted some "similar" reports where the following startup process was suggested to capture additional data:

java -Dsikuli.console=false -jar "c:\Program Files\Sikuli X\sikuli-ide.jar"

When I do this... The following console information is captured:

[info] locale: en_US
[debug] init user preferences
[info] install hotkey: CTRL+SHIFT+2 for onQuickCapture
[info] install hotkey: ALT+SHIFT+C for onStopRunning

Then the IDE successfully appears. If you click on the "Take Screenshot" icon the IDE disappears. The following additional console information also appears:

Exception in thread "capture" java.lang.UnsatisfiedLinkError: C:\Users\ud\AppDat
a\Local\Temp\tmplib\Win32Util.dll: Can't find dependent libraries
        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:84)
        at org.sikuli.script.ScreenHighlighter.init(ScreenHighlighter.java:175)
        at org.sikuli.script.ScreenHighlighter.<init>(ScreenHighlighter.java:288)
        at org.sikuli.script.Screen.initBounds(Screen.java:96)
        at org.sikuli.script.Screen.<init>(Screen.java:89)
        at org.sikuli.script.UnionScreen.<init>(UnionScreen.java:10)
        at org.sikuli.script.CapturePrompt.<init>(CapturePrompt.java:317)
        at org.sikuli.script.CapturePrompt.<init>(CapturePrompt.java:310)
        at org.sikuli.ide.CaptureButton$1.run(CaptureButton.java:186)

I researched the "error" shown above - and all reference articles I could find seemed to indicate this was a "path" problem. But both Sikuli and Java are mentioned correctly in my PATH variable:

C:\Program Files\Sikuli X\libs;C:\Program Files\Java\jre6\bin

Can anyone familiar with the new version shed some light on why it's not working? Any help would be greatly appreciated.

Thanks...

NOTE: I am currently running an older build of Java JRE (v1.6.0 Build 1.6.0-b105) for testing as the default behavior for "direct draw" was changed after JRE 6 update 10 and the Sikuli IDE does not properly display when running the latest version of the Java JRE on Windows Vista 32-bit - even with antialiasing disabled.

RaiMan (raimund-hocke)
description: updated
Revision history for this message
Neeraj Apte (neeraj-redchilli) wrote :

We have tried this on at least 3 different machines - two running Windows 7 and one Windows xp. As mentioned above the JVM setting "-Dsun.java2d.noddraw=true" doesn't seem to help. This is basically rendering rc2 completely unusable on windows. I can use it fine on my macbook.
I'm wondering whether there is a workaround such as:
1. Downgrading the JRE
2. Building sikuli from source

Also, hasn't this build been tested on Windows at all? I am curious to know if this is an external issue (JVM behavior) how were the Sikuli developers able to run it.

We love Sikuli and want to use it more, but this issue is a serious impediment right now. We have had to fall back to RC1 and miss out on some nice enhancements!

Revision history for this message
Diego Cardozo (dcardozo) wrote :

I think downgrading JRE doesn't solve this issue. Try upgrading to the last JRE version. I was using JRE update 3, and got this problem. I swithed to JRE update 24 (downloaded it today) and it worked like a charm.

Hope this helps.

Revision history for this message
Neeraj Apte (neeraj-redchilli) wrote :

Yep, just updated to JRE 1.6 update 25 (latest at the time) and RC2 started working fine.

RaiMan (raimund-hocke)
description: updated
Revision history for this message
J. Mailshredder (junkmailshredder) wrote :

I understand your comment:

"It might help, to upgrade to the newest JRE version (it seems that beginning with version 24 it might work."

However, as noted in the original report, Sun/Oracle made changes to the core JRE components post JRE 6 Update 10 that have adversely impacted a large number of computers (particularly laptops) with certain graphic chipsets. So, presently, it is not possible to upgrade to the "newest version" of JRE at this time. They are aware of the issue(s) and have not yet made a determination regarding a "fix".

Prior to the last Sikuli release, everything worked fine with older JRE versions. So, for now, the only option is to continue to test Sikuli using the older releases.

Revision history for this message
RaiMan (raimund-hocke) wrote :

Absolutely right, therefor I was very cautious:
... might help .... might work

since at least to responders were successful with an upgrade to 24+

Revision history for this message
Wayne McLachlan (waynemcl-l) wrote :

I have a script taking 4-7 seconds to find a taskbar icon. Is this usual performance, or indicative of the bug you mention?
I have a core 2 intel 2.16GHz with an intel Q965/963 display adapter, 2GB ram, 1920x1080 resolution.
Java 1.6, Siluli X RC2. Thanks, W.

RaiMan (raimund-hocke)
Changed in sikuli:
status: New → Confirmed
RaiMan (raimund-hocke)
tags: added: windows-startup
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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