Простой способ перенести код Java 6 в Java 5?

Мы уже некоторое время занимаемся разработкой приложения для Windows, использующего Java, но СЕЙЧАС мы хотим создать порт Mac и вынуждены отказаться от кода из Java 6 и Java 5. Есть ли какой-нибудь простой способ сделать это, вместо кодирование Java 6 конкретного кода? Мы хотели бы поддерживать наш код в актуальном состоянии.

20.08.2008 13:50:38
7 ОТВЕТОВ

Возможно, вы сможете перенести дополнительные библиотеки из Java 6 в Java 5, но я думаю, что это будет гораздо сложнее, чем стоит. На компьютерах Intel Mac с 64-разрядными процессорами (а не с оригинальным Intel Mac Mini) под управлением Leopard установлена ​​Java 6, так что, возможно, вы могли бы просто использовать их?

-1
20.08.2008 13:55:14

Apple выпустила Java 6 в последней версии OS X. Какие функции вы используете конкретно из Java6, которых нет в java5?

3
20.08.2008 13:57:15
Да, у нас уже давно есть Java6 с леопардом, просто он не по умолчанию.
Aaron 21.05.2009 01:49:29
И если это апплет, Java 6 не вариант. Может быть , когда снежный барс выпущен (сафари будет 64-разрядная версия )
tuler 10.07.2009 13:04:19

Вы знаете, сколько бы вам пришлось переписать, если бы вы только что вернулись в Java 5? Если вы измените настройку JDK в вашей IDE и попытаетесь перекомпилировать ее, это даст вам довольно хорошее представление о том, насколько большими будут изменения на самом деле. Для большинства разработчиков Java 6 на самом деле не предлагает слишком много новых функций / API, но я думаю, возможно, ваш проект сильно зависит от того, что было добавлено.

1
20.08.2008 14:00:58
В Java SE 6 не было внесено никаких изменений языка, поэтому параметры target и source практически не влияли
Davide 23.10.2008 16:05:23
В первую очередь мы используем Java 6 для System Tray. Все остальное можно исправить с помощью библиотек ...
Thorbjørn Ravn Andersen 10.06.2010 13:46:04
На самом деле в Java SE 6 есть (своего рода) изменение языка: @Override можно использовать для реализации интерфейса.
NullNoname 27.10.2013 08:06:54

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

4
21.08.2008 05:45:03

По моему опыту это так легко, что нытье занимает больше времени, чем делать. В 1.6 есть очень мало вещей, которые нельзя перенести с минутной (или буквально) стоимостью работы. Сколько ошибок компиляции вы видите, когда пытаетесь с 1.5, и зачем?

Имейте в виду, что есть легкодоступные API-совместимые бэкпорты с небольшим количеством места для тех немногих вещей, которые полезны в 1.6 (SwingWorker).

2
21.08.2008 15:39:39

Посмотреть здесь:

http://en.wikipedia.org/wiki/Comparison_of_backporting_tools

Я попробовал ретротранслятор с 1.6 до 1.4.2, и он работает довольно хорошо!

4
23.10.2008 16:06:17

Существует также Java 8 для Mac OS X. Новые версии Java будут совместимы, как Java 8 совместима с Java 5 Code, так что код Java 6 также совместим.

0
14.12.2015 07:46:18