Apple и Java

Вчера в новостях появилось сразу два интересных факта про отношение Apple к Java, и оба скорее в негативном плане. Первый — это то, что приложения, написанные на Java, в Mac App Store приниматься не будут. Второй — начиная с Update 3, Java в Mac OS X становится deprecated (если человеческим языком — то что-то вроде “устаревшей”), и в последующих версиях Mac OS X ее может не быть вовсе, поэтому разработчики не должны рассчитывать на то, что их приложения на Java будут работать на Mac OS X в будущем. Вот документ Apple по этому поводу, официально опубликованный на сайте компании.
Если смотреть на первый пункт сам по себе, то лично в нем для меня ничего удивительного нет. Учитывая набор требований к приложениям в Mac App Store (по ним не все приложения, на Xcode написанные, пройдут), могу сказать, что если кто-то думал, что можно будет протолкнуть Java-приложение в Mac App Store, то ему нужно внимательней изучить платформу и Apple (вы бы еще Flash-приложение туда собрались заталкивать, ага). А вот со вторым пунктом интересней.

Сам факт того, что Apple внезапно отказывается от Java, выглядит, мягко говоря, странным. В конце концов, несмотря на то, что приложения на Java выглядят “не очень” в Mac OS X, они, тем не менее, являются важной составляющей экосистемы — это вам не Flash, основное применение которого — навязчивые баннеры в интернете и игрушки. На Java пишутся многие корпоративные инструменты, а, учитывая интерес Apple к корпоративному рынку в последние несколько лет, “стрелять себе в ногу” таким образом было бы крайне неразумно. Ну да, Java используется разработчиками для Android, но вряд ли они настолько беспокоят Apple именно на Маке, чтобы ради этого убивать всю эту среду на платформе. Более того, Джобс очень тесно дружит с Ларри Эллисоном, руководителем Oracle, который сейчас “контролирует” Java, и вряд ли бы Джобс стал так подставлять своего друга, особенно в тот момент, когда тот использует патенты по Java, доставшиеся Oracle вместе с покупкой Sun, чтобы пощипать Google и Android.
[ad#intext-inside]
Но давайте посмотрим внимательней на формулировку Apple:

As of the release of Java for Mac OS X 10.6 Update 3, the Java runtime ported by Apple and that ships with Mac OS X is deprecated. Developers should not rely on the Apple-supplied Java runtime being present in future versions of Mac OS X.

Я хочу выделить из этого текста две фразы, которые мне кажутся ключевыми. Первый —  Java runtime ported by Apple and that ships with Mac OS X, а второй —  Apple-supplied Java runtime. Мне кажется, эта формулировка ключевая во всем этом “джава-гейте”, раз Apple так зацикливается именно на том, что речь идет о Java, которую дорабатывала для Mac OS X сама Apple и поставляла ее в составе системы.
[ad#intext-inside]
Если я правильно понимаю подход Apple (а также — дружбу Джобса с Эллисоном), вполне может наступить время, когда Apple действительно перестанет поставлять в составе Mac OS X среду Java, которая была разработана в Apple (и это произойдет, скорей всего, уже летом 2011 года, с выходом 10.7 Lion). Тем более, что большинству пользователей она не особо и нужна. А вот те, кому она может понадобиться, смогут, например, пойти на сайт Oracle и скачать оттуда нативный Java-runtime для Mac OS X, который прекрасно заменит то, что разрабатывала до этого Apple. Возможно, что это как раз тот случай, когда Apple берет пример у Microsoft, которая тоже не поставляет в составе системы никакого Java-runtime, и либо пользователям надо качать и устанавливать его отдельно, либо же разработчик может тащить с собой в приложении свою собственную виртуальную машину для этого. Почему-то такой вариант мне кажется значительно более вероятным, чем просто отказ Apple от Java “раз и навсегда”.
АПД. Как подсказывают нам в комментариях, похоже, что примерно так оно и есть — вот ответ Джобса java-разработчику в почте:

Sun (now Oracle) supplies Java for all other platforms. They have their own release schedules, which are almost always different than ours, so the Java we ship is always a version behind. This may not be the best way to do it.

Вот перевод от TouchDev:

Java для всех других платформ поставляется Sun (теперь Oracle). У них свои расписания выпуска релизов, которые всегда отличаются от наших, поэтому Java, которую мы поставляем — всегда на версию «позади». Это, возможно, не лучший метод так делать.

27 thoughts on “Apple и Java

  1. Я думаю Apple этим хотела сказать – мы больше не хотим заниматься Java, если Oracle хочет видеть Java в Mac OS X то пусть сама ее и разрабатывает. Тем самым они снимают с себя ответственность за любые проблемы с безопасностью/качеством работы и подстегивают Oracle к самостоятельному развитию собственной платформы.

  2. Pingback: Tweets that mention Apple и Java | alexmak.net -- Topsy.com

  3. очень часто дыры в jvm долго не латались эплом, в то время как для др. платформ патчи уже были…
    в принципе логичный шаг, вона ИБМ тоже высказалась в пользу “сторонней” жвм (OpenJDK), вместо своего варианта, причина таже
    и да – релизы очень запаздывали (всё время устаревшие), в обоих случаях

  4. Майкрософт, собственно, перестал встраивать JVM в винду после широко известного скандала и даже lawsuit’а с Саном из-за того, что MS, как всегда, стал отходить от сановского стандарта, чтобы привязать Джава-разработчиков к своим продуктам.
    Получив по рукам через суд, они вынуждены были отказаться от собственной Джава-машины.

  5. Майкрософт, собственно, перестал встраивать JVM в винду после широко известного скандала и даже lawsuit’а с Саном из-за того, что MS, как всегда, стал отходить от сановского стандарта, чтобы привязать Джава-разработчиков к своим продуктам.
    Получив по рукам через суд, они вынуждены были отказаться от собственной Джава-машины.

  6. “большинству пользователей она не особо и нужна” 🙂
    Ну, например, куча он-лайн банковских систем используют Java-applets для цифровой подписи. Да и вообще – в Internet Java-based штук полно. Так что, на месте пользователей MacOS X я бы понервничал: так можно и без Adobe Flash c Java остаться на голодном пайке от Apple 🙂

  7. Может я наивный, но мне кажется, что появление Mac App Store позволит поддерживать в актуальном состоянии сторонние приложения _и_библиотеки_, а не только те, которые разрабатывает или адаптирует сама Apple и сует в Software Update.
    Так что не удивлюсь, если следом за Java и Flash из поставки макоси исчезнут драйвера принтеров. И туда им и дорога – зачем устанавливать ради одного принтера полную базу драйверов производителя на сотни мегабайт?
    И пусть все это счастье обновляется через App Store

  8. Может я наивный, но мне кажется, что появление Mac App Store позволит поддерживать в актуальном состоянии сторонние приложения _и_библиотеки_, а не только те, которые разрабатывает или адаптирует сама Apple и сует в Software Update.
    Так что не удивлюсь, если следом за Java и Flash из поставки макоси исчезнут драйвера принтеров. И туда им и дорога – зачем устанавливать ради одного принтера полную базу драйверов производителя на сотни мегабайт?
    И пусть все это счастье обновляется через App Store

  9. Может я наивный, но мне кажется, что появление Mac App Store позволит поддерживать в актуальном состоянии сторонние приложения _и_библиотеки_, а не только те, которые разрабатывает или адаптирует сама Apple и сует в Software Update.
    Так что не удивлюсь, если следом за Java и Flash из поставки макоси исчезнут драйвера принтеров. И туда им и дорога – зачем устанавливать ради одного принтера полную базу драйверов производителя на сотни мегабайт?
    И пусть все это счастье обновляется через App Store

  10. Может я наивный, но мне кажется, что появление Mac App Store позволит поддерживать в актуальном состоянии сторонние приложения _и_библиотеки_, а не только те, которые разрабатывает или адаптирует сама Apple и сует в Software Update.
    Так что не удивлюсь, если следом за Java и Flash из поставки макоси исчезнут драйвера принтеров. И туда им и дорога – зачем устанавливать ради одного принтера полную базу драйверов производителя на сотни мегабайт?
    И пусть все это счастье обновляется через App Store

    • Мало того, я на минуту представил, что будет, если скажем ВСЕ
      приложения НУЖНО будет ставить ТОЛЬКО через App Store в
      его ныняшнем виде:
      1. Умрут многие мелкие разработки, в которых нет сил, желания
      на мало-мальские телодвижения по регистрации и бумажной
      волоките с Apple.
      Умрут проекты, которые по пол-года / году не обновляются,
      читай “любительщина”.
      2. Переход команд “на новые рельсы” быдет крайне болезненным
      для их самолюбия: “ограничение свободы” и прочая херня, которую
      несут “наколенные” разработчики и, возможно, всяческим “утрясанием”
      вопроса про 5-15% Apple от стоимости. (А как же, хотят за всю инфра-
      структуру дистрибуции не плалить ни копейки и продавать своё месяцами
      не апдейченное и не развиваемое приложение за $10-50)
      3. Все “обычные” потребители вздохнут спокойно: Apple можно доверять,
      “лажу” и вирусы они не пропустят.
      4. Для “пиратящей” партии настанут трудные времена: установка
      ворованного ПО станет ещё более трудомкой и практически недоступной
      для обычного обывателя.
      (“Кошки-мышки” c сертификатами, усовершенствование Apple
      системы подписи и проверки приложений – вот реальность.)
      p.s. К слову: когда мы привозили N лет назад iPhone 2G в Украину
      одними из первых в рекламных целях, репозитарии и терминал
      с уймой хороших программ – было “наше всё”.
      Сейчас, я кажется года 2-3 даже не помню, что это такое и
      как оно выглядит.
      Ну и кому эти “свободные источники” наводнённые уже
      вирусованным софтом нужны ? Ах да, забыл – Geeks – вот
      тот самый рынок.
      Одно но – эти же самые Geeks не дадут Вам заработать
      ни копейки, пиратя Ваши программы и пробухивая пивом
      и пропрыгивая с парашютом остальные деньги 🙂

  11. Может я наивный, но мне кажется, что появление Mac App Store позволит поддерживать в актуальном состоянии сторонние приложения _и_библиотеки_, а не только те, которые разрабатывает или адаптирует сама Apple и сует в Software Update.
    Так что не удивлюсь, если следом за Java и Flash из поставки макоси исчезнут драйвера принтеров. И туда им и дорога – зачем устанавливать ради одного принтера полную базу драйверов производителя на сотни мегабайт?
    И пусть все это счастье обновляется через App Store

  12. Всё правильно. Пусть Oracle сам делает яву для маков.
    Не знаю причин, но на сайте Sun Java для MacOS X никогда не наблюдалось.
    При этом некоторые приложения (например Oracle SQL Developer) под MacOS работают некорректно (работать невозможно). Приходится ставить OpenJDK, а это сами понимаете во что выливается для системы.
    Некоторые люди пользуются Mac-ами только потому, что на них работает Eclipse.

    • Eclipse, вроде, не только на маках работает. На линухе я ее видел…
      Сам-то Эклипсом только на Маке пользуюсь, потому что пишу под WebObjects, а по лицензии это только на маках можно делать.

      • Eclipse есть там, где есть Java, т.е. почти везде (на самом деле нужна нативная библиотека для SWT). Я к тому, что если Oracle не сделает Java для Mac, а Apple свою выпускать перестанет, то некоторые люди не смогут работать.

    • Eclipse, вроде, не только на маках работает. На линухе я ее видел…
      Сам-то Эклипсом только на Маке пользуюсь, потому что пишу под WebObjects, а по лицензии это только на маках можно делать.

  13. Оракл взялся за лицензионные разборки с java. Плхоже, что монетизация java от sun не устраевает нового владельца. Там все сложно и в сети есть масса информации по теме. Здесь, скорее всего, привентивные меры apple, что бы не влететь на лицензионные проблемы. Сейчас многие компании – ява разработчики, например мы, очень внимательно следят за происходящим в Оракл, риски высокие.

  14. В Apple не самоубийцы, чтобы отказаться от корпоративных пользователей, да и заметной части простых юзверей из-за нежелания писать свою JVM.
    Очевидно, они договорились с Oracle и, что также вероятно, станут ко-спонсором разработки. В любом случае, переход на стандартную Java – благо, поскольку она заметно шустрее той, что в Mac OS, да и постабильнее будет… Взять хотя бы регулярные “вылеты” OpenOffice (NeoOffice) под Mac OS и весьма стабильную его работу под Linux (и, в меньшей степени, под Windows).
    Пользователь от такого выиграет, разработчики тоже. Apple – кто его знает… Не принимая приложения на Java в Mac Apple Store, компания почти не рискует… Большинство Java-приложений ставится более продвинутыми пользователями, которым и Store не шибко нужен, и Jav-у скачать – не проблема.
    Зато если в Mac App Store не будет самой JVM – это может стать бедой. Программные пакеты будут тянуть за собой разные версии вирутальной машины, неминуемы несовместимость и глюки, что снизит комфортность работы и создаст ненужный негатив по отношению Mac OS как платформы…

  15. Pingback: Apple может исключить поддержку Java для Mac OS X

  16. Без джавы сейчас не жить. Я исключаю вариант что макось останется без десктопной жабы. Разве что нативные Cocoa-bindings уйдут, ну так они уже очень давно depricated.
    Подождем что будет, когда выйдет 10.7.

  17. Вчера коллега был на Oracle Day.
    Объявили, что Java под MacOS будет через месяц.
    Интересно, что спонсором компьютерной техники была Apple.
    А в конце была лотерея, где разыгрывали 10 шт. iPod Nano.

Leave a Reply