首页 > 解决方案 > Eclipse 中的 SikuliX 错误消息 - Ubuntu - [错误] ImagePath: find: not there: imgs/spotlight.png FindFailed: imgs/spotlight.png: (0x0)

问题描述

我刚刚在 Ubuntu 16.04 下安装了 SikuliX(sikulixapi-2.0.4.jar) 和 Eclipse Oxygen。测试程序如下:

import org.sikuli.script.*;

public class Test {

        public static void main(String[] args) {
                Screen s = new Screen();
                try{
                        s.click("imgs/spotlight.png");
                        //s.wait("imgs/spotlight-input.png");
                        //s.click();
                        s.write("hello world#ENTER.");
                }
                catch(FindFailed e){
                        e.printStackTrace();
                }
        }

}

但是,当我运行测试程序时,我收到以下错误消息:

[错误] ImagePath:查找:不存在:imgs/spotlight.png

FindFailed: imgs/spotlight.png: (0x0) in R[0,0 1280x800]@S(0) Line 2222,在文件 Region.java 的 org.sikuli.script.Region.wait(Region.java:2222) 中org.sikuli.script.Region.wait(Region.java:2240) 在 org.sikuli.script.Region.getLocationFromTarget(Region.java:3188) 在 org.sikuli.script.Region.click(Region.java:3806)在 org.sikuli.script.Region.click(Region.java:3782) 在 Test.main(Test.java:9)

我进行了搜索,并在https://answers.launchpad.net/sikuli/+question/668883找到了与此错误相关的另一篇文章。

我使用 Gnome 屏幕截图制作了我的第一个屏幕截图,并使用 Gimp 屏幕截图制作了另一个屏幕截图,但是在这两种情况下我仍然收到相同的错误。

正如您在下面看到的,图片spotlight.png 似乎是Eclipse 在项目中找到的。在此先感谢您的帮助。

在此处输入图像描述

标签: javaeclipseubuntusikuli-x

解决方案


您存储图像的位置必须在 SikuliX ImagePath 中注册。在您的情况下,当您在 Eclipse 中运行这些东西时,它是当前工作文件夹(项目文件夹)。

在 main() 的开头添加它。

ImagePath.add(System.getProperty("user.dir"))

来自 SikuliX 的 RaiMan


推荐阅读