Это тот случай, когда код, скомпилированный с помощью компилятора Java 7, нуждается в Java 7 JVM для его запуска?
Да.
Вы могли бы использовать компилятор Java 7 для компиляции с -target 6.0
, но это не поможет, если код зависит от библиотек классов, специфичных для Java 7 ... как, очевидно, у вас.
Если да, возникнут ли у меня всевозможные проблемы с клиентскими компьютерами, на которых не установлена / недоступна JVM 7 для этой платформы (более старые OSX, Windows XP и т. Д.)?
Да.Это, безусловно, случай на «установленном» фронте.Если ваш код зависит от Java 7, лучшим вариантом будет заставить ваших клиентов установить Java 7 JVM для его запуска.(Установить несколько версий Java параллельно просто, и есть хороший шанс, что другие приложения Java будут нормально работать с Java 7 JVM.)
На «доступном» фронте,мы не будем точно знать, какие платформы будут поддерживаться, пока Oracle фактически не выпустит Java 7. Если есть значимые платформы, которые не поддерживаются, есть хороший шанс, что:
- кто-то перенесет OpenJDK 7 на платформу, или
- сторонний поставщик (например, IBM) поддержит его в своем предложении Java 7.
(Но я бы не стал делать ставку на кого-либо, поддерживающего Windows pre-XP, а старые версии OSX сомнительны, ИМО.)
Мой совет - не переходить на Java 7 ... пока ... если поддержка старых платформ является важным требованием.