3

我在我的 java 应用程序中使用 sikuli-script.jar。它在控制台中写入大量日志消息。所以,我想禁用日志记录或更改日志记录级别。我怎么能做到这一点?那里使用什么日志库以及如何配置它?

4

5 回答 5

2

如果您使用的是 Java,则可能需要查看Sikuli-API。它试图更像是一个标准的 Java 库。

Sikuli-API 使用SLF4J,因此您只需将其连接到您使用的任何日志记录框架(我非常喜欢Logback),它将使用该配置。

于 2013-03-06T16:44:45.260 回答
2

您可以在脚本顶部包含此行以禁用操作日志,例如标准输出上的鼠标单击日志:D

Settings.ActionLogs=0
于 2014-04-20T18:27:38.493 回答
2

我运行了一些 Sikuli 脚本几次,从未注意到任何详细的输出。我认为您可以通过将这样的选项传递给 JVM来覆盖它:

-Dsikuli.Debug=ERROR

或者

-Dsikuli.Debug=0

这是一个未经测试的答案。你必须自己尝试一下。

于 2013-01-16T20:32:56.937 回答
0

在 sikuli-java.jar 中,sikuli-basics 允许访问一些可配置的选项:

Settings.ActionLogs
Settings.InfoLogs

可以将其中一个/两者都分配为 false 以禁用日志记录。

或者,可以使用 Debug.setLogFile(filename) 将输出重定向到文件而不是标准输出。

祝你好运,西库利人!

于 2014-04-10T15:33:11.063 回答
0

对于 Mac OS X 10.11.5 和 JDK 1.8 下的 Sikuli 1.1.0,这是我在通过 CLI 运行脚本时可以抑制日志记录的唯一方法:

java -Dsikuli.Debug=-2 -jar /Applications/SikuliX.app/Contents/Java/sikulix.jar -r /path/to/your/test.sikuli

笔记:

1)您必须将 -Dsikuli.Debug 设置为 -2 才能使其工作(感谢@NullPointer)

2)您必须将 -Dsikuli.Debug=-2 作为 JVM 选项放在“java”之后,而不是将其放在命令末尾

于 2016-06-12T01:25:16.940 回答