Sikuli 安装程序不会执行

Sikuli setup won't execute

我正在尝试在新电脑上安装 sikuli v1.0.1。我以前在其他机器上安装过 Sikuli,它非常好用。

但是这一次,sikuli 不会启动设置。

像往常一样,我将安装文件复制到桌面上的一个文件夹中,然后执行该文件以接收 "runSetup" 文件和日志,效果很好。

但是,当我执行 runSetup 文件时,cmd-window 短暂出现并几乎立即关闭,没有像我习惯的那样进一步打开 window...

有没有人有解决问题的想法?

我正在尝试在 windows 7、64 位上安装(就像我使用过 Sikuli 的所有其他计算机一样)

提前致谢!

简短更新:

我刚刚 运行 从 cmd 提示符下尝试安装文件,但在这样做时出现以下错误: +++ Java 未在标准位置 C:\Program Files 或 C:\Program Files (x86)

中找到

+++ JAVA_HOME 未指定 +++ 以一些错误结束

但是,在提到的目录中存在一个 java 文件夹...

您的计算机上需要安装 Java 和 JDK。

如果您右键单击 .cmd 文件并 select "Edit" 您可以看到他在做什么。它会让您了解您的计算机缺少什么。 我认为您没有安装 jre6 或 jre7。

编辑

好的,我也在我的新电脑上安装了这个。我有同样的问题。好像 Oracle 也发布了一个新版本。从 2015 年 3 月起,旧版本将不再受支持。所以...我决定保留最新的 Java 版本并调整 "runSetup.cmd" 和 "runIDE.cmd" 以识别最新的 Java 版本。

我会post这里调整一下,也许其他人也可以用。 为了弄清楚这一点。如果你去 "C:\Program Files (x86)\Java" 我这里有目录 "jre1.8.0_40"。

我也为 "C:\Program Files" 安装了 java 的人做了调整。我只是没有测试过。但我认为它会起作用,因为它完全一样。

这些是应该工作的调整文件:

runSetup.cmd

@echo off
SETLOCAL

set SIKULIX_HOME=%~dp0
set PARMS=-Xms64M -Xmx512M -Dfile.encoding=UTF-8

if not defined JAVA_HOME goto CHECKJAVA
IF EXIST "%JAVA_HOME%\bin\java.exe" goto JAVA_OK
echo +++ JAVA_HOME specified but not useable %JAVA_HOME%
echo +++ looking for Java in standard places

:CHECKJAVA
set PROGRAMS=%ProgramFiles%
if defined ProgramFiles(x86) set PROGRAMS32=%ProgramFiles(x86)%

IF not EXIST "%PROGRAMS%\Java\jre1.8.0_40" goto JAVA7
set JAVA_HOME=%PROGRAMS%\Java\jre1.8.0_40
goto JAVA_OK

:JAVA7
IF not EXIST "%PROGRAMS%\Java\jre7" goto JAVA6
set JAVA_HOME=%PROGRAMS%\Java\jre7
goto JAVA_OK

:JAVA6
IF not EXIST "%PROGRAMS%\Java\jre6" goto JAVANO
set JAVA_HOME=%PROGRAMS%\Java\jre6
goto JAVA_OK

:JAVANO
if not defined %PROGRAMS32% goto JAVANO32

IF not EXIST "%PROGRAMS32%\Java\jre1.8.0_40" goto JAVA7
set JAVA_HOME=%PROGRAMS32%\Java\jre1.8.0_40
goto JAVA_OK

:JAVA7
IF not EXIST "%PROGRAMS32%\Java\jre7" goto JAVA6
set JAVA_HOME=%PROGRAMS32%\Java\jre7
goto JAVA_OK

:JAVA6
IF not EXIST "%PROGRAMS32%\Java\jre6" goto JAVANO32
set JAVA_HOME=%PROGRAMS32%\Java\jre6
goto JAVA_OK

:JAVANO32
echo +++ Java not found in standard places %PROGRAMS% or %PROGRAMS32%
echo +++ JAVA_HOME not specified
goto STOPIT

:JAVA_OK 
echo +++ running this Java
"%JAVA_HOME%\bin\java.exe" -version
PATH=%SIKULIX_HOME%libs;%PATH%
echo +++ trying to start Sikuli Setup in %SIKULIX_HOME%
"%JAVA_HOME%\bin\java.exe" %PARMS% -jar "%SIKULIX_HOME%sikuli-setup.jar" %*

GOTO FINALLY
:STOPIT
echo.+++ ended with some errors
:FINALLY
ENDLOCAL

runIDE.cmd

@echo off
SETLOCAL

set SIKULIX_HOME=%~dp0
set PARMS=-Xms64M -Xmx512M -Dfile.encoding=UTF-8 -Dsikuli.FromCommandLine

if not defined JAVA_HOME goto CHECKJAVA
IF EXIST "%JAVA_HOME%\bin\java.exe" goto JAVA_OK
echo +++ JAVA_HOME specified but not useable %JAVA_HOME%
echo +++ looking for Java in standard places

:CHECKJAVA
set PROGRAMS=%ProgramFiles%
if defined ProgramFiles(x86) set PROGRAMS32=%ProgramFiles(x86)%

IF not EXIST "%PROGRAMS%\Java\jre1.8.0_40" goto JAVA7
set JAVA_HOME=%PROGRAMS%\Java\jre1.8.0_40
goto JAVA_OK

:JAVA7
IF not EXIST "%PROGRAMS%\Java\jre7" goto JAVA6
set JAVA_HOME=%PROGRAMS%\Java\jre7
goto JAVA_OK

:JAVA6
IF not EXIST "%PROGRAMS%\Java\jre6" goto JAVANO
set JAVA_HOME=%PROGRAMS%\Java\jre6
goto JAVA_OK

:JAVANO
if not defined %PROGRAMS32% goto JAVANO32

IF not EXIST "%PROGRAMS32%\Java\jre1.8.0_40" goto JAVA7
set JAVA_HOME=%PROGRAMS32%\Java\jre1.8.0_40
goto JAVA_OK

:JAVA7
IF not EXIST "%PROGRAMS32%\Java\jre7" goto JAVA6
set JAVA_HOME=%PROGRAMS32%\Java\jre7
goto JAVA_OK

:JAVA6
IF not EXIST "%PROGRAMS32%\Java\jre6" goto JAVANO32
set JAVA_HOME=%PROGRAMS32%\Java\jre6
goto JAVA_OK

:JAVANO32
echo +++ Java not found in standard places %PROGRAMS% or %PROGRAMS32%
echo +++ JAVA_HOME not specified
goto STOPIT

:JAVA_OK 
echo +++ running this Java
set SIKULI_COMMAND=%*
"%JAVA_HOME%\bin\java.exe" -version
PATH=%SIKULIX_HOME%libs;%PATH%
echo +++ trying to start Sikuli IDE 
echo +++ using: %PARMS% -jar %SIKULIX_HOME%sikuli-ide.jar %SIKULI_COMMAND%
"%JAVA_HOME%\bin\java.exe" %PARMS% -jar "%SIKULIX_HOME%sikuli-ide.jar" %SIKULI_COMMAND%

GOTO FINALLY
:STOPIT
echo.+++ ended with some errors
:FINALLY
ENDLOCAL

如果 运行 "runSetup.cmd" 仍然有问题,您还可以在文件下方的空行中添加 "pause"(不带引号)。然后命令提示符将保留,您可以阅读错误。