RaiMan / SikuliX-2014

SikuliX version 1.1.2 (until February 2018)
http://sikulix.com
805 stars 235 forks source link

Using ImagePath.add("myClass/images") for accessing images in jar results in ImageMissing #304

Open raichu2652 opened 6 years ago

raichu2652 commented 6 years ago

https://github.com/RaiMan/SikuliX-2014/blob/1bac29ed14a5872a2c35ca2382f28364ad83b209/API/src/main/java/org/sikuli/basics/FileManager.java#L911

https://github.com/RaiMan/SikuliX-2014/blob/1bac29ed14a5872a2c35ca2382f28364ad83b209/API/src/main/java/org/sikuli/script/ImagePath.java#L654

jarURL already contains "file:" that what I see from ImagePath.get() is "jar:file:file:C:/xxx/yyy/myartifact.jar!/images". And it finally fails to locate the image file.

The workaround I'm using is to call ImagePath.addJar() instead of ImagePath.add(). However, the final artifact executable jar name is less consistent than the class name, so it would be great if I could call ImagePath.add() to get it worked. Also I don't think the behavior is intended?

RaiMan commented 6 years ago

Thanks, I will check.