มีปัญหากับ Java ในขณะที่พยายามเรียกใช้ pycharm-community-4.5


9

ฉันเพิ่งติดตั้ง pycharm-community-4.5 ลงใน Ubuntu 14.04 ของฉัน (64 บิต) หลังจากติดตั้งฉันรันคำสั่ง/opt/pycharm-community-4.5/bin$ ./pycharm.shเพื่อรัน pycharm แต่เทอร์มินัลแสดงให้ฉันเห็นข้อผิดพลาดบางอย่างดังต่อไปนี้

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

นี่คือผลลัพธ์ของฉัน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)

ฉันจะแก้ไขได้อย่างไร


Java, รากของความชั่วร้ายทั้งหมด
Virusboy

:( ไม่มีอะไรให้ทำ
อับดุลลาห์อัลอิมราน

การสนับสนุน MaxPermSize ถูกลบใน Java 8.0 แต่ฉันไม่พบรายการ pycharm.vmoptionsดูเหมือนว่ารายการในจะไม่ทำงาน ฉันดาวน์โหลด PyCharm เวอร์ชั่นล่าสุดและใช้งานได้ใน Ubuntu 15.04 โดยไม่มีการเปลี่ยนแปลง
AB

คุณมีจาวาในการติดตั้ง PyCharm หรือไม่? ข้อความแสดงข้อผิดพลาดไม่เหมือนกับ Oracle Java หรือ OpenJDK
AB

แก้ไขคำถามของคุณและเพิ่มผลลัพธ์ของecho "$PYCHARM_JDK"
AB

คำตอบ:


8

เปิดไฟล์ pycharm64.vmoptions

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

และเพิ่ม#จุดเริ่มต้นของบรรทัด

# -XX:MaxPermSize=350m

เปิดไฟล์ pycharm.vmoptions

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

และเพิ่ม#จุดเริ่มต้นของบรรทัด

# -XX:MaxPermSize=250m

การสนับสนุน MaxPermSize ถูกลบใน Java 8.0 แต่ข้อความแสดงข้อผิดพลาด

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

ดูไม่เหมือน Oracle Java 8 หรือ OpenJDK 8

ตัวเริ่มต้น PyCharm pycharm.shพยายามค้นหา 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

ตรวจสอบให้แน่ใจว่าคุณใช้เวอร์ชัน Java ที่คุณต้องการใช้


1

ดูข้างในbinโฟลเดอร์ของโฟลเดอร์ pycharm ที่คุณแตกออกมา

มีไฟล์ที่เรียกว่าและpycharm64.vmoptions ภายในพวกเขาคุณสามารถลบบรรทัดที่มีตัวเลือกของผู้กระทำผิดpycharm.vmoptionsMaxPermSize=350m

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.