Problem z Javą podczas próby uruchomienia pycharm-community-4.5

9

Właśnie zainstalowałem pycharm-community-4.5 w moim Ubuntu 14.04 (64-bit). Po zainstalowaniu uruchomiłem polecenie /opt/pycharm-community-4.5/bin$ ./pycharm.shuruchomienia pycharm, ale terminal pokazał mi kilka błędów, jak następuje:

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

Oto wynik mojego 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)

Jak to naprawić?

Abdullah Al Imran
źródło
Java, źródło wszelkiego zła.
Virusboy
:( nic nie robić.
Abdullah Al Imran
Obsługa MaxPermSize została usunięta w Javie 8.0. Ale nie mogę znaleźć wpisu. Wpis pycharm.vmoptionswydaje się nie działać. Pobrałem najnowszą wersję PyCharm i działa ona w systemie Ubuntu 15.04. bez zmian.
AB
Czy masz java w instalacji PyCharm? Komunikat o błędzie nie wygląda jak Oracle Java lub OpenJDK.
AB
Edytuj swoje pytanie i dodaj wynikecho "$PYCHARM_JDK"
AB

Odpowiedzi:

8

Otwórz plik pycharm64.vmoptions

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

i dodać #na początku linii

# -XX:MaxPermSize=350m

Otwórz plik pycharm.vmoptions

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

i dodać #na początku linii

# -XX:MaxPermSize=250m

Obsługa MaxPermSize została usunięta w Javie 8.0, ale komunikat o błędzie

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

nie wygląda jak Oracle Java 8 lub OpenJDK 8.

Starter PyCharm pycharm.shpróbuje znaleźć Javę:

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

Upewnij się, że używasz wersji Java, z której chcesz korzystać.

AB
źródło
1

Przejrzyj binfolder wyodrębnionego folderu pycharm.

Istnieją pliki o nazwie pycharm64.vmoptionsi pycharm.vmoptions. Wewnątrz możesz usunąć linię za pomocą opcji winowajcy MaxPermSize=350m.

Heinz Fiedler
źródło