2013-04-02 2 views
3

Я в настоящее время обновляюсь от JAVA 1.4 до JAVA 6 SE. Некоторые из методов и классов либо устарели, либо существует множество предупреждений из-за неэффективной практики. Я хочу знать, могу ли я обновиться без внесения каких-либо изменений в мой код и после изменения удаленной отладки, чтобы исправить ошибки. Если есть более простой или эффективный способ сделать это, пожалуйста, поделитесь.Обновление с Java 1.4 до JAVA 6 SE

+0

См. Также [http://en.wikipedia.org/wiki/Java_version_history#J2SE_5.0_.28September_30.2C_2004.29](http://en.wikipedia.org/wiki/Java_version_history#J2SE_5.0_.28September_30 .2C_2004.29) – Eich

+0

Java, теоретически, всегда обратная совместимость.У вас будет много предупреждений (например, отсутствие дженериков), но код должен работать –

+2

Почему обновление до Java ** 6 **, которое также будет отменено в конце этого года? Если вы обновляете, вам следует перейти на Java 7. –

ответ

3

Обычный подход:

  • запустить свой код через новый компилятор
  • исправить любые ошибки компиляции (может happpen в некоторых редких случаях, например, когда вы использовали слово enum как идентификатор, который является ключевое слово для Java 1.5 и выше)
  • ли полный цикл QA, чтобы убедиться, что приложение по-прежнему работает правильно

Кроме того, следует рассмотреть upgradin g на Java 7 - Java 6 также находится в своем end-of-life phase.

1

В принципе, вы можете запустить свой код Java 1.4 на виртуальной машине Java 6 без изменений. Возможно, появились новые API, которые фактически обесценили старые. Как правило, Javadoc устаревшего API должен указывать указатель на то, что вы должны использовать.

3

Я хочу знать, можно ли обновить его без внесения каких-либо изменений в мой код и после изменения удаленной отладки, чтобы исправить ошибки.

Мы не можем дать вам окончательное да или нет.

Во-первых, следует отметить, что большинство наименований и предупреждений можно игнорировать для начала. (Некоторые из вас рассказывают о вещах, которые должны быть исправлены в ближайшее время, но наиболее вопиющие примеры плохих/опасных API были устаревшими задолго до Java 1.4)

Поэтому одна из причин, по которой мы не можем дать вам окончательного ответа, заключается в том, что мы надеемся Не знаете, какие предупреждения вы видите (duh!).

Другая причина в том, что мы не знаем, насколько хорош/обширен ваш набор тестов. Если у вас есть хороший набор тестов, шансы хорошие, что любые проблемы будут подняты. Если нет, или если вы полагаетесь на ручное тестирование, ваши шансы найти какие-либо проблемы, вызванные обновлением, значительно сократятся.


Другая вещь, чтобы отметить, что документация для каждого основного выпуска Java включает в себя раздел Несовместимость между новой версией и предыдущей. Это хорошая идея, по крайней мере, снять эти документы, чтобы увидеть, может ли какая-либо из проблем затронуть ваше приложение.


И наконец, большинство людей считают, что модернизация не приводит к большому количеству проблем. Конечно, есть исключения. И если у вас есть привычка в зависимости от конкретного поведения реализации, а не от того, что говорят javadocs, это может привести к боли.

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