2012-12-29 20 views
12

Sono un utente Eclipse che ha recentemente deciso di provare Intellij Idea. Il mio sistema operativo è Ubuntu 12.Con quale JVM Intellij Idea viene utilizzato per l'avvio?

Lavorare con Eclipse è stato facile scegliere una JVM utilizzata per avviare Eclipse specificandola in eclipse.ini (http://wiki.eclipse.org/Eclipse.ini#Specifying_the_JVM). Ma non riesco a trovare una cosa del genere per IntelliJ IDEA 12.

Così, ho 2 domande:

  1. Come fa IntelliJ IDEA determinare che cosa JVM da utilizzare per avviare se stessa?
  2. C'è un modo per ignorare questo comportamento predefinito?

Grazie.

+0

vi consiglio di leggere lo script di avvio si esegue per iniziare idea cioè 'idea.sh' –

+1

@PeterLawrey Ho provato a cercare la risposta nel file di configurazione di Idea e completamente dimenticato di guardare nello script di avvio. Grazie! – preeze

+0

https://intellij-support.jetbrains.com/hc/en-us/articles/206544879-Selecting-the-JDK-version-the-IDE-will-run-under – stackexchanger

risposta

9

Dal idea.sh si esegue

# --------------------------------------------------------------------- 
# 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 
3

IntelliJ IDEA viene fornito con un proprio JDK. Prova a cercare nella directory $IDEA_HOME/bin per idea.sh o smth così. Puoi usarlo per la messa a punto.

+0

Va con il proprio JDK in linux anche la distribuzione? – preeze

+0

No, hai ragione. Utilizza la JVM di sistema, come da idea.sh dalla risposta di Peter. – madhead

0

Risposta breve: questo è impostato dalla variabile di ambiente IDEA_JDK.

Problemi correlati