使用 Sikuli 导出应用程序
Exporting an app with Sikuli
我在使用 java 库 sikuli 时遇到问题。
首先,我下载了 sikuli setup jar 并执行了它。它创建了 sikuli-java.jar 和一个 libs 文件夹(在 c:/documents/sikuli 下)。之后我在eclipse中创建了一个项目,将jar添加到构建路径并编写了代码。当我在 Eclipse 中 运行 时,该代码有效。之后,我从中创建了一个 运行nable jar。我 运行 运行 可用的罐子。碰到sikuli代码就关闭了。
我想将应用程序导出为 运行nable jar 并部署它,而不需要用户安装 sikuli。这甚至可能吗?
另外:https://github.com/RaiMan/SikuliX-2014/wiki/Usage-in-Java-programming
take care, that sikulixapi.jar is in the Java classpath of your project
我什至没有名为 sikulixapi.jar 的文件。
=======================================
也许是一个简短的说明,我已经创建了带有选项 4 和 6 的 sikuli-java.jar。
编辑:
任何人?该应用程序在 eclipse 中运行良好,但是当我将其导出为 运行nable jar 和 运行 时,一旦它遇到 sikuli 内容,它就会关闭。没有触发 catch 块,尽管我用 catch(Exception ex) 包围了代码。我已经像这样配置了 Eclipse:
这是来自 SikuliX 的 RaiMan (http://sikulix.com)
-- 1.您目前使用的是1.0.1。我建议切换到版本 1 1.1.0,因为这样安装更顺畅,尤其是在 Windows 上(不再需要路径条目或任何其他东西)。
由于您想将您的应用程序部署到没有安装 SikuliX 的系统上,这会更容易。
-- 2. 如果你想在没有安装 SikuliX 的系统上 运行 你的应用程序,你必须打包一个 sikulixapi.jar (为目标系统创建)到你的应用程序 jar (制作一个所谓的 fat jar 或 uber jar)或允许人们从某个地方下载现成的 sikulixapi.jar 并注意您的应用程序,当您的 sikulixapi.jar 在 class 路径上时应用 运行s。在您的情况下什么有意义取决于您希望如何发布您的应用程序。
-- 3. 你说:该应用程序在 eclipse 中运行良好,但当我将其导出为 运行nable jar 时......
在 Eclipse 内部它需要 car,依赖的东西在 class 路径上。虽然在工作区中生成的 jar 是 "naked" 并且在 运行 时需要一个 class 路径。
有一个选项,可以将依赖的 jar 复制到工作区中的 lib 文件夹。如果你这样做,你的罐子就会工作(尽管我不建议这样做:sikulix 罐子不应该四处移动,而只能以某种方式引用)
-- 4. 你说:没有触发 catch 块,尽管我用 catch(Exception ex) 包围了代码。
如果你 运行 你的 jar 从命令行说:
java -jar myapp.jar
它应该会崩溃并出现一些不匹配的异常(很可能 "class not found")
正如您已经做过的那样,您可以参考这里 post 直接与我联系。
我在使用 java 库 sikuli 时遇到问题。 首先,我下载了 sikuli setup jar 并执行了它。它创建了 sikuli-java.jar 和一个 libs 文件夹(在 c:/documents/sikuli 下)。之后我在eclipse中创建了一个项目,将jar添加到构建路径并编写了代码。当我在 Eclipse 中 运行 时,该代码有效。之后,我从中创建了一个 运行nable jar。我 运行 运行 可用的罐子。碰到sikuli代码就关闭了。
我想将应用程序导出为 运行nable jar 并部署它,而不需要用户安装 sikuli。这甚至可能吗?
另外:https://github.com/RaiMan/SikuliX-2014/wiki/Usage-in-Java-programming
take care, that sikulixapi.jar is in the Java classpath of your project
我什至没有名为 sikulixapi.jar 的文件。
=======================================
也许是一个简短的说明,我已经创建了带有选项 4 和 6 的 sikuli-java.jar。
编辑: 任何人?该应用程序在 eclipse 中运行良好,但是当我将其导出为 运行nable jar 和 运行 时,一旦它遇到 sikuli 内容,它就会关闭。没有触发 catch 块,尽管我用 catch(Exception ex) 包围了代码。我已经像这样配置了 Eclipse:
这是来自 SikuliX 的 RaiMan (http://sikulix.com)
-- 1.您目前使用的是1.0.1。我建议切换到版本 1 1.1.0,因为这样安装更顺畅,尤其是在 Windows 上(不再需要路径条目或任何其他东西)。 由于您想将您的应用程序部署到没有安装 SikuliX 的系统上,这会更容易。
-- 2. 如果你想在没有安装 SikuliX 的系统上 运行 你的应用程序,你必须打包一个 sikulixapi.jar (为目标系统创建)到你的应用程序 jar (制作一个所谓的 fat jar 或 uber jar)或允许人们从某个地方下载现成的 sikulixapi.jar 并注意您的应用程序,当您的 sikulixapi.jar 在 class 路径上时应用 运行s。在您的情况下什么有意义取决于您希望如何发布您的应用程序。
-- 3. 你说:该应用程序在 eclipse 中运行良好,但当我将其导出为 运行nable jar 时...... 在 Eclipse 内部它需要 car,依赖的东西在 class 路径上。虽然在工作区中生成的 jar 是 "naked" 并且在 运行 时需要一个 class 路径。 有一个选项,可以将依赖的 jar 复制到工作区中的 lib 文件夹。如果你这样做,你的罐子就会工作(尽管我不建议这样做:sikulix 罐子不应该四处移动,而只能以某种方式引用)
-- 4. 你说:没有触发 catch 块,尽管我用 catch(Exception ex) 包围了代码。 如果你 运行 你的 jar 从命令行说:
java -jar myapp.jar
它应该会崩溃并出现一些不匹配的异常(很可能 "class not found")
正如您已经做过的那样,您可以参考这里 post 直接与我联系。