From f3d567744c9cf5c1779666df09bda190fb8df7e4 Mon Sep 17 00:00:00 2001 From: Roman Shevchenko Date: Mon, 18 Jul 2016 17:44:44 +0200 Subject: [PATCH] Cleanup (structured conditions instead of jumps) --- bin/scripts/win/idea.bat | 81 ++++++++++++++++++++-------------------- 1 file changed, 41 insertions(+), 40 deletions(-) diff --git a/bin/scripts/win/idea.bat b/bin/scripts/win/idea.bat index e40302ee716a..483f10f10a80 100644 --- a/bin/scripts/win/idea.bat +++ b/bin/scripts/win/idea.bat @@ -4,52 +4,62 @@ :: @@product_full@@ startup script. ::---------------------------------------------------------------------- +:: --------------------------------------------------------------------- +:: Ensure IDE_HOME points to the directory where the IDE is installed. +:: --------------------------------------------------------------------- +SET IDE_BIN_DIR=%~dp0 +SET IDE_HOME=%IDE_BIN_DIR%\.. + :: --------------------------------------------------------------------- :: Locate a JDK installation directory which will be used to run the IDE. :: Try (in order): @@product_uc@@_JDK, @@vm_options@@.jdk, ..\jre, JDK_HOME, JAVA_HOME. :: --------------------------------------------------------------------- -IF EXIST "%@@product_uc@@_JDK%" SET JDK=%@@product_uc@@_JDK% -IF NOT "%JDK%" == "" GOTO jdk -SET BITS=64 -SET USER_JDK64_FILE=%USERPROFILE%\.@@system_selector@@\config\@@vm_options@@.jdk -SET BITS= -SET USER_JDK_FILE=%USERPROFILE%\.@@system_selector@@\config\@@vm_options@@.jdk -IF EXIST "%USER_JDK64_FILE%" ( SET/pJDK=<%USER_JDK64_FILE% -) ELSE ( IF EXIST "%USER_JDK_FILE%" SET/pJDK=<%USER_JDK_FILE% ) -IF "%JDK%" == "" GOTO jdk0 -IF EXIST "%JDK%" GOTO jdk -SET JDK=%~dp0\..\%JDK% -GOTO jdk +SET JDK= +IF EXIST "%@@product_uc@@_JDK%" ( + SET JDK=%@@product_uc@@_JDK% +) +IF "%JDK%" == "" ( + SET BITS=64 + SET USER_JDK64_FILE=%USERPROFILE%\.@@system_selector@@\config\@@vm_options@@.jdk + SET BITS= + SET USER_JDK_FILE=%USERPROFILE%\.@@system_selector@@\config\@@vm_options@@.jdk + IF EXIST "%USER_JDK64_FILE%" ( + SET /P JDK=<%USER_JDK64_FILE% + IF NOT EXIST "%JDK%" SET JDK=%IDE_HOME%\%JDK% + ) ELSE ( + IF EXIST "%USER_JDK_FILE%" ( + SET /P JDK=<%USER_JDK_FILE% + IF NOT EXIST "%JDK%" SET JDK=%IDE_HOME%\%JDK% + ) + ) +) +IF "%JDK%" == "" ( + IF EXIST "%IDE_HOME%\jre" SET JDK=%IDE_HOME%\jre +) +IF "%JDK%" == "" ( + IF EXIST "%JDK_HOME%" SET JDK=%JDK_HOME% +) +IF "%JDK%" == "" ( + IF EXIST "%JAVA_HOME%" SET JDK=%JAVA_HOME% +) -:jdk0 -IF NOT "%JDK%" == "" GOTO jdk -IF EXIST "%~dp0\..\jre" SET JDK=%~dp0\..\jre -IF NOT "%JDK%" == "" GOTO jdk -IF EXIST "%JDK_HOME%" SET JDK=%JDK_HOME% -IF NOT "%JDK%" == "" GOTO jdk -IF EXIST "%JAVA_HOME%" SET JDK=%JAVA_HOME% -IF "%JDK%" == "" GOTO error - -:jdk SET JAVA_EXE=%JDK%\bin\java.exe IF NOT EXIST "%JAVA_EXE%" SET JAVA_EXE=%JDK%\jre\bin\java.exe -IF NOT EXIST "%JAVA_EXE%" GOTO error +IF NOT EXIST "%JAVA_EXE%" ( + ECHO ERROR: cannot start IntelliJ IDEA. + ECHO No JDK found. Please validate either IDEA_JDK, JDK_HOME or JAVA_HOME points to valid JDK installation. + ECHO + EXIT /B +) SET JRE=%JDK% IF EXIST "%JRE%\jre" SET JRE=%JDK%\jre IF EXIST "%JRE%\lib\amd64" SET BITS=64 -:: --------------------------------------------------------------------- -:: Ensure IDE_HOME points to the directory where the IDE is installed. -:: --------------------------------------------------------------------- -SET IDE_BIN_DIR=%~dp0 -SET IDE_HOME=%IDE_BIN_DIR%\.. - -IF NOT "%@@product_uc@@_PROPERTIES%" == "" SET IDE_PROPERTIES_PROPERTY="-Didea.properties.file=%@@product_uc@@_PROPERTIES%" - :: --------------------------------------------------------------------- :: Collect JVM options and properties. :: --------------------------------------------------------------------- +IF NOT "%@@product_uc@@_PROPERTIES%" == "" SET IDE_PROPERTIES_PROPERTY="-Didea.properties.file=%@@product_uc@@_PROPERTIES%" SET USER_VM_OPTIONS_FILE=%USERPROFILE%\.@@system_selector@@\@@vm_options@@.vmoptions SET VM_OPTIONS_FILE=%IDE_BIN_DIR%\@@vm_options@@.vmoptions @@ -77,12 +87,3 @@ SET PATH=%IDE_BIN_DIR%;%PATH% "%JAVA_EXE%" %ALL_JVM_ARGS% -cp "%CLASS_PATH%" com.intellij.idea.Main %* SET PATH=%OLD_PATH% -GOTO end - -:error -ECHO ERROR: cannot start @@product_full@@. -ECHO No JDK found. Please validate either @@product_uc@@_JDK, JDK_HOME or JAVA_HOME points to valid JDK installation. -ECHO -PAUSE - -:end