Masalah dengan Java saat mencoba menjalankan pycharm-community-4.5

9

Saya baru saja menginstal pycharm-community-4.5 ke dalam Ubuntu 14.04 saya (64 bit). Setelah menginstal saya menjalankan perintah /opt/pycharm-community-4.5/bin$ ./pycharm.shuntuk menjalankan pycharm tetapi terminal menunjukkan kepada saya beberapa kesalahan sebagai berikut-

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

Ini hasil dari saya 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)

Bagaimana saya memperbaikinya?

Abdullah Al Imran
sumber
Jawa, akar dari semua kejahatan.
Virusboy
:( tidak ada hubungannya.
Abdullah Al Imran
Dukungan MaxPermSize telah dihapus di Java 8.0. Tetapi saya tidak dapat menemukan entri. Entri di pycharm.vmoptionstampaknya tidak berfungsi. Saya telah mengunduh versi PyCharm terbaru dan berfungsi di Ubuntu 15.04. tanpa perubahan.
AB
Apakah Anda memiliki java di instalasi PyCharm? Pesan kesalahan tidak terlihat seperti Oracle Java atau OpenJDK.
AB
Edit pertanyaan Anda dan tambahkan outputecho "$PYCHARM_JDK"
AB

Jawaban:

8

Buka file pycharm64.vmoptions

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

dan tambahkan #di awal baris

# -XX:MaxPermSize=350m

Buka file pycharm.vmoptions

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

dan tambahkan #di awal baris

# -XX:MaxPermSize=250m

Dukungan MaxPermSize telah dihapus di Java 8.0, tetapi pesan kesalahan

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

tidak terlihat seperti Oracle Java 8 atau OpenJDK 8.

Starter PyCharm pycharm.shmencoba menemukan 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

Pastikan Anda menggunakan versi Java yang ingin Anda gunakan.

AB
sumber
1

Lihat di dalam binfolder folder pycharm yang Anda ekstrak.

Ada file yang dipanggil pycharm64.vmoptionsdan pycharm.vmoptions. Di dalamnya, Anda dapat menghapus baris dengan opsi pelakunya MaxPermSize=350m.

Heinz Fiedler
sumber