【问题标题】:Sikuli import error when moved to another machine移动到另一台机器时,Sikuli 导入错误
【发布时间】:2014-05-07 12:00:47
【问题描述】:

我正在使用 Sikuli 开始自动化并碰壁了...

我有 2 个脚本,其中一个被导入到另一个中。当我在本地运行时,从 IDE 和命令行,一切正常。即使我更改了要导入的脚本的位置也是如此。所以给人的印象是,一旦创建了main的skl,就不需要导入的skl了。

但是,当我将主脚本移动到另一台机器并从命令行运行它时,它说它无法导入(没有模块名称)。如果我将导入的 skl 复制到该机器并指示主 skl 从正确的位置导入,也会发生这种情况。

  1. 导入和主脚本有什么关系?导入的脚本是否应该始终可用以便 main 可以导入它?导入的脚本是否应该仅在创建主脚本之前可用?导入和主要位置之间的关系是什么?

  2. 将脚本文件移动到另一台机器并直接运行它们有什么问题吗?

谢谢 本。

【问题讨论】:

    标签: import sikuli


    【解决方案1】:

    我假设您将“主”脚本称为驱动程序脚本,您已将调用的脚本导入其中,比如说xyz.sikuli

    当您运行主脚本时,Sikuli 会在同一目录中查找导入的模块,除非您明确定义了任何系统变量。

    假设您创建了一个名为Sikuli_Scripts 的系统变量,其值为C:\test\Scripts,而Scripts 目录分别是您的mainxyz.sikuli。所以当你执行主脚本时,xyz.sikuli 会被调用,因为它知道xyz.sikuli 位于 Scripts 目录下。如果您将xyz.sikuli 移动到其他目录,它根本不会被调用并会导致失败。

    因此,最好将所有 Sikuli 脚本安排在一个地方,甚至是 Sikuli 设置。创建一个系统变量为Sikuli_Home,其值为C:\test\SikuliX 以及Sikuli 设置。

    这样可以更轻松地组织所有内容。然后,您可以归档整个文件夹 test 并移动到其他系统环境变量/系统变量并开始。它对我有用。

    【讨论】:

    • 通过玩弄它,我发现:可以从任何地方调用主脚本。 XYZ 脚本(我导入的那个)必须位于其工作区的 .sikuli 目录中。该空间可以在任何地方,并且 main 不必在同一个目录中。
    猜你喜欢
    • 2021-10-15
    • 2011-01-18
    • 2017-10-19
    • 1970-01-01
    • 1970-01-01
    • 2013-07-25
    • 2015-04-09
    • 2019-02-15
    • 1970-01-01
    相关资源
    最近更新 更多