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"(不带引号)。然后命令提示符将保留,您可以阅读错误。
我正在尝试在新电脑上安装 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"(不带引号)。然后命令提示符将保留,您可以阅读错误。