Итак, прочитав еще один пост с вопросом, я понял, что мой вопрос изменился. По сути, почему я не могу изменить свой уровень соответствия в Eclipse с 1.6 до 1.7, но я собираюсь оставить основную часть своего вопроса, как он был напечатан изначально.
Это очень специфический вопрос, но я прохожу онлайн серию курсов по Java, и один из уроков посвящен переключению. В примере кода используется переключатель со строками (и курс, и я использую Eclipse). Когда я пытаюсь запустить код, он выдает ошибку, в которой говорится: «Не удается включить значение типа String для исходного уровня ниже 1.7. Разрешены только конвертируемые значения int или константы enum»
Я понимаю, что это потому, что строки может использоваться только с коммутатором в Java 7. Таким образом, я пошел об установке Java 7 в терминале, используя некоторые инструкции, которые я нашел в Интернете. После этого «Затмение» вообще не будет работать. Я вернулся к Java 6 и обнаружил, что использую Java 7 Oracle, но у меня была возможность перейти на Java 7 OpenJDK. Eclipse снова работает, но я все еще получаю ту же ошибку, что и раньше. Почему это? И есть ли способ это исправить?
Для некоторой дополнительной информации вот какой терминал возвращает, когда я набираю «sudo update-alternatives --config java» для переключения между версиями.
glitch@glitch-Inspiron-1720:~$ sudo update-alternatives --config java
[sudo] password for glitch:
There are 3 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-7-oracle/jre/bin/java 1062 auto mode
1 /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java 1061 manual mode
* 2 /usr/lib/jvm/java-7-openjdk-i386/jre/bin/java 1051 manual mode
3 /usr/lib/jvm/java-7-oracle/jre/bin/java 1062 manual mode
Press enter to keep the current choice[*], or type selection number:"
Как вы можете видеть, я в настоящее время использую java-7-openjdk, где, как и прежде, я использовал java-7-oracle (что привело к неработающему Eclipse), и до этого я предполагаю, что я использовал java -6-openjdk (это то, во что я запускаю Minecraft, но кто знает).
Более конкретно, я использую:
glitch@glitch-Inspiron-1720:~$ java -version
java version "1.7.0_55"
OpenJDK Runtime Environment (IcedTea 2.4.7) (7u55-2.4.7-1ubuntu1~0.12.04.2)
OpenJDK Server VM (build 24.51-b03, mixed mode)
Я смотрел на этот вопрос: Не могу использовать Java 7 из Eclipse?
Я пытался следовать инструкции, приведенные там, вплоть до изменения свойств> компилятора Java> уровня соответствия до 1.7
я обнаружил, что расположение моей JVM было / usr / lib / jvm /, но когда я вставил это для JRE home в Eclipse это дает мне такую ошибку: «Цель не является корнем JDK. Исполняемый файл Java не найден»
Я очень разочарован. Кто-нибудь может помочь? Также, пожалуйста, прости мое невежество, я совсем новичок во всем этом.
Фиксированный! Я удалил и переустановил Java и изменил местоположение своей JVM к /usr/lib/jvm/java-1.7.0-openjdk-i386
. Решение было намного более простым, чем я думал. Теперь я чувствую себя очень глупым.