Подтвердить что ты не робот

С чем JVM использует Intellij Idea для запуска?

Я пользователь Eclipse, который недавно решил попробовать Intellij Idea. Моя ОС - Ubuntu 12.

Работая с Eclipse, было легко выбрать JVM, используемый для запуска Eclipse, указав его в eclipse.ini(http://wiki.eclipse.org/Eclipse.ini#Specifying_the_JVM). Но я не могу найти такую ​​вещь для Intellij Idea 12.

Таким образом, у меня есть 2 вопроса:

  • Как Intellij Idea определяет, какую JVM использовать для начала?
  • Есть ли способ переопределить это поведение по умолчанию?

Спасибо.

4b9b3361

Ответ 1

Из идеи .sh вы запустите

# ---------------------------------------------------------------------
# Locate a JDK installation directory which will be used to run the IDE.
# Try (in order): IDEA_JDK, JDK_HOME, JAVA_HOME, "java" in PATH.
# ---------------------------------------------------------------------
if [ -n "$IDEA_JDK" -a -x "$IDEA_JDK/bin/java" ]; then
  JDK="$IDEA_JDK"
elif [ -n "$JDK_HOME" -a -x "$JDK_HOME/bin/java" ]; then
  JDK="$JDK_HOME"
elif [ -n "$JAVA_HOME" -a -x "$JAVA_HOME/bin/java" ]; then
  JDK="$JAVA_HOME"
else
  JAVA_BIN_PATH=`which java`
  if [ -n "$JAVA_BIN_PATH" ]; then
    if [ "$OS_TYPE" = "FreeBSD" ]; then
      JAVA_LOCATION=`JAVAVM_DRYRUN=yes java | "$GREP" '^JAVA_HOME' | "$CUT" -c11-`
      if [ -x "$JAVA_LOCATION/bin/java" ]; then
        JDK="$JAVA_LOCATION"
      fi
    elif [ "$OS_TYPE" = "SunOS" ]; then
      JAVA_LOCATION="/usr/jdk/latest"
      if [ -x "$JAVA_LOCATION/bin/java" ]; then
        JDK="$JAVA_LOCATION"
      fi
    elif [ "$OS_TYPE" = "Darwin" ]; then
      JAVA_LOCATION=`/usr/libexec/java_home`
      if [ -x "$JAVA_LOCATION/bin/java" ]; then
        JDK="$JAVA_LOCATION"
      fi
    fi

    if [ -z "$JDK" -a -x "$READLINK" ]; then
      JAVA_LOCATION=`"$READLINK" -f "$JAVA_BIN_PATH"`
      case "$JAVA_LOCATION" in
        */jre/bin/java)
          JAVA_LOCATION=`echo "$JAVA_LOCATION" | xargs dirname | xargs dirname | xargs dirname` ;;
        *)
          JAVA_LOCATION=`echo "$JAVA_LOCATION" | xargs dirname | xargs dirname` ;;
      esac
      if [ -x "$JAVA_LOCATION/bin/java" ]; then
        JDK="$JAVA_LOCATION"
      fi
    fi
  fi
fi

Ответ 2

IntelliJ IDEA поставляется со своим собственным JDK. Попробуйте заглянуть в каталог $IDEA_HOME/bin для idea.sh или smth. Вы можете использовать его для настройки.

Ответ 3

Короткий ответ: это задается переменной среды IDEA_JDK.