2012-03-23 4 views
0

Локально мне нужно кодировать Java 1.4.Только для принудительного использования Eclipse Java 1.4

Я попытался предложение на этом посту how to restrict jdk api version in eclipse

однако Eclipse, все еще обеспечивает завершение кода для String.contains, который доступен только в Java 1.5 не представила об ошибке маркер Красный X.

Как я могу заставить Eclipse предоставить только завершение кода для Java 1.4 Classes and Methods и предупредить меня с Red X, что я не могу использовать что-то выше версии 1.4?

+0

Вы установили уровень компиляции?Он также должен быть установлен в 1.4. Думаю, вы только что добавили JRE. – kosa

+0

У меня есть уровень компилятора, равный 1.4. Но установлен на моем компьютере 1,6. Как отметил ajozwik, мне, вероятно, нужно установить JDK 1.4 на моем ПК, поэтому при локальном кодировании я получаю RED X, если класс выходит за рамки – jeff

ответ

5

Вы должны установить java версию 1.4.2 на свой компьютер и определить jre 1.4.2. Недостаточно установить компиляцию с 1.4, потому что вы все еще видите 1.5 api

+0

Звучит правильно. ИТ-система постоянно обновляет наш компьютер с помощью JDK, но на нашем веб-сервере у них все еще есть 1,4 – jeff

+0

В eclipse preference-> java -> установлен jre и добавлен jdk 1.4. Затем перейдите в среду Execution и выберите J2SE-1.4 и проверьте jdk 1.4 –

+0

Не так ли это описано в ссылке в моем Вопросе? Но без фактической загрузки jdk 1.4? Прямо сейчас я выбрал J2SE-1.4 (jdk1.6.0_22). Если я загружу 1.4, он будет читать J2SE-1.4 (jdk1.4.2)? Я думал, что точка среды исполнения должна была понизить версию без фактической загрузки и установки этой версии. – jeff

0

Щелкните правой кнопкой мыши по вашему проекту и выберите «Свойства». Проверьте параметры компилятора Java, чтобы убедиться, что соответствие jdk равно 1.4.

0

Перейти к Project Properties -> Java Compiler и убедитесь, что все ваши настройки соответствия JDK находятся на 1,4

0

Перейти к проекту настройки -> Java компилятор, снимите соответствие кода по умолчанию и выберите 1.4.

+0

. Это не будет работать, если все, что установлено, - это более поздние JDK. Компилятор не знает, что было в каждой версии библиотек (classes.jar). –

1

Если у вас на самом деле нет JDK 1.4, компилятор Eclipse не может знать, что такие вещи, как String.contains(), не были в этой версии. Указание среды выполнения просто говорит ей, что она может выполнять компиляцию, совместимую с Java 1.4, но такие вещи, как методы в классе String, являются частью библиотеки (classes.jar), не присущей уровню языка Java. Итак, если все, что у вас есть, это более поздние JDK, компилятор видит String.contains() в classes.jar и, следовательно, компилирует ваш код против него.

Итак, установите JDK 1.4, а затем настройте его в разделе «Установленные JRE» в разделе «Настройки»; также убедитесь, что он установлен как значение по умолчанию для среды выполнения 1.4.

0

Вы можете заставить затмение использовать любую предыдущую версию Java, выполнив следующие действия:

Шаги

  1. правой кнопкой мыши проект и откройте свойства щелкая Свойства опций.
  2. Выбрать Компилятор Java.
  3. В JDK соответствия категории снимите флажок Использование Compliance от исполнения ... опция
  4. Теперь выберите нужный вариант Java (1.4) в Compiler уровня соответствия: вариант
  5. и нажмите OK

Теперь eclipse будет использовать желаемую предыдущую версию (скажем 1.4), не устанавливая ее явно, даже если у вас установлена ​​или настроена 1,7 или 8,0.

Смежные вопросы