web-dev-qa-db-fra.com

Problème avec Java lors de la tentative d'exécution de pycharm-community-4.5

Je viens d'installer pycharm-community-4.5 dans Ubuntu 14.04 (64 bits). Après l’installation, j’ai lancé la commande /opt/pycharm-community-4.5/bin$ ./pycharm.sh pour exécuter pycharm, mais le terminal m’a montré des erreurs comme suit-

Unrecognized VM option MaxPermSize=350m
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

Voici le résultat de mon Java -version:

Java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)

Comment je le répare?

9

Ouvrez le fichier pycharm64.vmoptions

nano /opt/pycharm-community-4.5/bin/pycharm64.vmoptions

et ajoutez un # au début de la ligne

# -XX:MaxPermSize=350m

Ouvrez le fichier pycharm.vmoptions

nano /opt/pycharm-community-4.5/bin/pycharm.vmoptions

et ajoutez un # au début de la ligne

# -XX:MaxPermSize=250m

La prise en charge de MaxPermSize a été supprimée dans Java 8.0, mais le message d'erreur

Unrecognized VM option MaxPermSize=350m
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

ne ressemble pas à Oracle Java 8 ni à OpenJDK 8.

Le démarreur PyCharm pycharm.sh essaie de trouver Java:

# ---------------------------------------------------------------------
# Locate a JDK installation directory which will be used to run the IDE.
# Try (in order): PYCHARM_JDK, ../jre, JDK_HOME, Java_HOME, "Java" in PATH.
# ---------------------------------------------------------------------
if [ -n "$PYCHARM_JDK" -a -x "$PYCHARM_JDK/bin/Java" ]; then
  JDK="$PYCHARM_JDK"
Elif [ -x "$IDE_HOME/jre/bin/Java" ] && "$IDE_HOME/jre/bin/Java" -version > /dev/null 2>&1 ; then
  JDK="$IDE_HOME/jre"
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" -o "$OS_TYPE" = "MidnightBSD" ]; 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" -a -x "$XARGS" -a -x "$DIRNAME" ]; 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"`
          if [ ! -d "$Java_LOCATION/bin" ]; then
            Java_LOCATION="$Java_LOCATION/jre"
          fi
          ;;
        *)
          Java_LOCATION=`echo "$Java_LOCATION" | "$XARGS" "$DIRNAME" | "$XARGS" "$DIRNAME"`
          ;;
      esac
      if [ -x "$Java_LOCATION/bin/Java" ]; then
        JDK="$Java_LOCATION"
      fi
    fi
  fi
fi
  1. $PYCHARM_JDK
  2. $IDE_HOME/jre/bin/Java
  3. $JDK_HOME
  4. $Java_HOME

Assurez-vous que vous utilisez la version Java que vous souhaitez utiliser.

8
A.B.

Examinez le dossier bin du dossier pycharm que vous avez extrait.

Il existe des fichiers appelés pycharm64.vmoptions et pycharm.vmoptions. À l'intérieur, vous pouvez supprimer la ligne avec l'option coupable de MaxPermSize=350m.

1
Heinz Fiedler