Journal Java 11 est dehors

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
33
26
sept.
2018

Bonjour Nal,

Je t'écris pour te parler de la sortie de la nouvelle version de la plateforme de développement préférée des développeurs de logiciels libres: Java 11.

Voici les nouveautés qui ont retenu mon attention:

  • Les applets et la plateforme de déploiement Web Start, dépréciées en Java 9, sont définitivement mis à la poubelle. Java et les navigateurs web c'est fini!
  • Windows et MacOS ne bénéficieront plus de mises à jour automatique.
  • Le JRE disparait. Pour lancer une application Java, il faudra désormais soit utiliser le JDK, soit construire un mini runtime via jlink.
  • JavaFX et Java Mission Control deviennent des projets autonomes.
  • une nouvelle API pour faire des requêtes HTTP fait son apparition.
  • il est désormais possible d'exécuter un simple fichier .java comme un script shell avec un shebang.
  • # motivation

    Posté par  . Évalué à 5.

    quelles sont les raisons de l'abandon du JRE ?

    • [^] # Re: motivation

      Posté par  (site web personnel) . Évalué à 5.

      Je pense que c'est pour simplifier:

      • plusieurs applications Java => installe un jdk!
      • une seule application Java dans une image docker => embarque un mini jre via jlink.

      Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

      • [^] # Re: motivation

        Posté par  (Mastodon) . Évalué à 6.

        Il n'y avait aussi un projet de modularisation de la bibliothèque standard Java où on pouvait par conséquent ne dépendre que de petit morceau plutôt que de l'ensemble ?

    • [^] # Re: motivation

      Posté par  (site web personnel) . Évalué à 10.

      bah de toute façon, en entreprise quand tu commences à essayer de distinguer JDK/JRE, JVM, JavaSE, J2EE/JEE tu commences à passer pour un hurluberlu. Tant mieux, JDK ça va tout simplifier :-)

      • [^] # Re: motivation

        Posté par  . Évalué à 6. Dernière modification le 26 septembre 2018 à 23:34.

        Simplifier ? Peut-être pas : https://www.oracle.com/technetwork/java/javase/terms/license/javase-license.html

        Oracle grants You a nonexclusive, nontransferable, limited license to internally use the Programs, subject to the restrictions stated in this Agreement and Program Documentation, only for the purpose of developing, testing, prototyping and demonstrating Your Application and **not for any other purpose**.

        À moins d'utiliser OpenJDK.

        • [^] # Re: motivation

          Posté par  (site web personnel) . Évalué à 7.

          C'est très bien d'utiliser l'openjdk!

          Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

          • [^] # Re: motivation

            Posté par  . Évalué à 3.

            C'est très bien d'utiliser l'openjdk!

            Bien sûr, mais crois-tu que le bureau d'étude qui utilise ton application Java pour faire les études techniques qu'il vend et qui met consciencieusement à jour son installation Java depuis près de 20 ans, d'abord chez Sun puis chez Oracle, va se rendre compte du problème de licence avant qu'Oracle ne vienne l'assigner en justice ?

            • [^] # Re: motivation

              Posté par  (site web personnel) . Évalué à 8.

              Bien sûr puisqu'il m'a payé très cher pour un audit de son SI !

              Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

          • [^] # Re: motivation

            Posté par  . Évalué à 6.

            C'est très bien d'utiliser l'openjdk!

            En ce moment la question n'est pas de savoir si c'est très bien, c'est de savoir comment la maintenance de jdk11u sera assurée (et jdk8u au passage puisque la fin des public updates d'Oracle est pour Janvier 2019).

            Oracle annonce retirer ses devs de la maintenance des branches d'update d'OpenJDK 6 mois après une release, LTS ou non. Auparavant le retrait des devs correspondait à la fin des public updates (soit 5+ ans et quelques dizaines de milliers de patchs après la GA). Les patchs qui iront dans Oracle JDK 11 ne seront pas contribués à OpenJDK 11. Pour le moment personne n'a annoncé prendre la relève, donc en l'état OpenJDK 11 est mort dans 6 mois et les releases tous les 6 mois sont intenables pour l'écosystème Java (depuis Java 9 la rétrocompatibilité source & binaire stricte et à tout prix n'est plus une ligne rouge).

            Pour le moment Azul Zulu Enterprise annonce suivre la politique d'Oracle: pas de backport de ses patchs dans OpenJDK 11.

            Donc il va bien falloir que quelqu'un mette la main à la patte !

            Résumé de la situation: https://docs.google.com/document/d/1nFGazvrCvHMZJgFstlbzoHjpAVwv5DEdnaBr_5pKuHo/preview

            • [^] # Re: motivation

              Posté par  (site web personnel) . Évalué à -5.

              Ça sent le bon gros FUD. Ce n'est pas la première fois qu'on annonce la mort de Java et puis bon…

              Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

              • [^] # Re: motivation

                Posté par  . Évalué à 7. Dernière modification le 27 septembre 2018 à 10:23.

                FUD alors que je te donne la source la plus factuelle sur le sujet ? Elle n'est contestée par personne et signée par la majorité des Java champions et contributeurs à l'écosystème Java.

                Personne n'annonce la mort de Java ici. La réalité c'est juste qu'Oracle retire ses pions de la maintenance gratuite de Java (qui est gentiment offerte depuis Java 1.0). Reste pour le moment une LTS OpenJDK annoncée mais sans mainteneur ni contributeurs déclarés. RedHat prendra certainement jdk8u comme ils ont pris jdk7u. Mais assurer jdk11u qui est en début de vie c'est une autre paire de manche. Si tu regardes le nombre de backport qu'il y a eu depuis la GA de Java 8 c'est gros.

                Je ne te fais pas l'analyse du pourquoi du changement de stratégie, là ça serait subjectif. Mais oui il y actuellement des changements majeurs en cours dans l'écosystème Java, stratégiques et techniques, ça se stabilisera surement vu l'importance de Java mais en ce moment la visibilité est faible.

                Si tu veux une autre source d'information: https://www.youtube.com/watch?v=078QIrp0SD8

                • [^] # Re: motivation

                  Posté par  (site web personnel) . Évalué à 1.

                  Ta source mélange un peu de tout et ne comprends pas bien quel est le problème. Oracle peut du jour au lendemain arrêter de corriger les bugs de la JVM. Et alors?

                  Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

            • [^] # Re: motivation

              Posté par  . Évalué à -4.

              Donc il va bien falloir que quelqu'un mette la main à la patte !

              Peut-être que la fondation apache se lancera, elle a réagit à ces annonces ?

              Bref, ça sent mauvais pour avoir un java libre.

              Reste donc .NET

              • [^] # Re: motivation

                Posté par  (site web personnel) . Évalué à 5.

                Ou Windev !

                Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

              • [^] # Re: motivation

                Posté par  . Évalué à 6. Dernière modification le 27 septembre 2018 à 10:42.

                Peut-être que la fondation apache se lancera, elle a réagit à ces annonces ?

                La fondation Apache fourni uniquement une structure juridique et de l'infrastructure. Ces choses la sont acquises pour OpenJDK qui est l'implémentation de référence de Java totalement supporté par Oracle et autres vendeurs de JDK.

                Oracle JDK provient d'OpenJDK et Oracle continue de tout contribuer à jdk/jdk, l'équivalent de master. D'ailleurs depuis Java 11 OpenJDK est fonctionnellement équivalent à Oracle JDK puisque les fonctionnalités jusque ici proprio ont été soit contribuées à OpenJDK (Flight Recorder) soit retirées d'Oracle JDK (Java Web Start, Java FX etc.).

                Le flou actuel, c'est qui va fournir les développeurs pour maintenir les branches stables maintenant qu'Oracle sort systématiquement du jeu 6 mois après la GA. La fondation Apache ne s'occupe pas de ça. Elle ne fourni jamais de développeurs ni ne sponsorise de projet. La réponse viendra certainement soit des gros vendeurs ayant besoin d'un Java stable gratuit dans leurs offres commerciales (RedHat, AWS, IBM) soit d'ailleurs :)

            • [^] # Re: motivation

              Posté par  (site web personnel) . Évalué à 5.

              pour JDK 8, Red Hat s'y colle jusqu'en 2023

              https://access.redhat.com/articles/1299013

              ce point a été abordé au fosdem 2018 lors de l'annonce du time-based release + LTS par Mark Reihnold (et son acolyte de Red Hat sur OpenJDK). Tu peux retrouver la conf' sur le site du fosdem :-)

  • # Java en script shell

    Posté par  . Évalué à -10.

    HAHAHAHAHAHAHHAHAHAHAAHHAAHAHAHHAHAHAHA. Pardon désolé.

  • # Y en a qui aiment...

    Posté par  . Évalué à -4.

    Mais non ce n'est pas ma plateforme de développement préférée, désolé ;-)
    Pour moi Java permet à des personnes "d'éviter" les pointeur du C/C++, même en C++ il y a des techniques qui permettent grandement d'éviter cela.
    "Java" a ses avantages, notamment pour sa duplication en fonction de la charge sur les serveurs, mais quand je vois des applications juste Desktop faites en Java je me dis "c'est dommage".
    Du coup certains sont étonnés de la vitesse de lancement d'un programme "natif" C++ par rapport à son équivalent Java (cf logiciel SQL dont le journal est passé il y a quelques semaines).

    • [^] # Re: Y en a qui aiment...

      Posté par  . Évalué à -7.

      Étonnant de se faire "moinser" pour mon commentaire qui est très correct et pas éloigné de la réalité.
      Des haineux ? ou des personnes n'aimant pas le C++ ou trouvant le C++ trop compliqué pour eux ?
      Houps je vais me faire "moinser" je crois :-D

      • [^] # Re: Y en a qui aiment...

        Posté par  (site web personnel) . Évalué à 9. Dernière modification le 26 septembre 2018 à 20:18.

        Perso je moinse parce que tes commentaires sont inutiles, du fait qu'ils n'ont rien à voir avec le sujet du journal (la sortie d'une version pour X, et pas "moi je préfère X, et vous?").

        C'est juste gonflant les gens qui vient balancer leur désamour pour X sur un journal parlant certes de X mais qui propose de discuter de la nouveauté de X et seulement ça, à croire que des gens ont des comptes persos à régler avec X et que les autres doivent subir leur histoire de désamour.

        Si X ne t’intéresse pas, ignore le journal.

        • [^] # Re: Y en a qui aiment...

          Posté par  . Évalué à -10.

          Je disais juste que le commentaire était trop élogieux. Mais ton commentaire est visiblement encore plus inutile que le mien mais quand l’hôpital se moque de la charité…
          Mais si cela te permet de te défouler et d'éviter d'aller voir un psy ça peut être bien

        • [^] # Re: Y en a qui aiment...

          Posté par  . Évalué à 10.

          C'est juste gonflant les gens qui vient balancer leur désamour pour X sur un journal parlant certes de X mais qui propose de discuter de la nouveauté de X et seulement ça

          Oui enfin, permet moi de citer la première phrase du journal:

          la plateforme de développement préférée des développeurs de logiciels libres: Java

          Si c'est pas un appel du pied pour troller, je sais pas ce qu'il te faut.

          Et puis entre nous, tu es quand même très mal placé pour critiquer un mec qui balance le premier troll tout en nous jouant la partition de "je ne fais qu'énumérer les faits, rien que les faits".

      • [^] # Re: Y en a qui aiment...

        Posté par  (site web personnel) . Évalué à 4.

        En quoi il est correct ton commentaire ? Rien que la première phrase montre que tu connais à peine le c++ et java.. je parle même pas du reste, je croyais que ce commentaire était une blague…

        Enfin bon, compares ton logiciel SQL a dbeaver par exemple, ou avec des applications Android si pour toi le temps de démarrage est le critère numéro 1.

        • [^] # Re: Y en a qui aiment...

          Posté par  . Évalué à -10.

          En quoi il est incorrect ? il est respectueux pas comme ta première phrase agressive et ta suffisance. J'en connais certainement un rayon en C++ mais la blague visiblement c'est toi.

          • [^] # Re: Y en a qui aiment...

            Posté par  (site web personnel) . Évalué à 10.

            ton commentaire n'est pas correcte sur les points suivants (tu as le droit de ne pas aimer Java, rien ne te force, tu peux même le dire, mais ne traite pas les autres de haineux si il te moinsse) :

            Mais non ce n'est pas ma plateforme de développement préférée, désolé ;-)

            Java (et encore moins le C++) ne sont des "plateformes de développement" déjà, ça m'énerve. Je vais pas décrire la différence entre le language C++ et la plateforme Java, mais plateforme de développement, ça inclue bien d'autres choses (IDE, Framework utilisés, Compilateur, OS et enfin, le langage)

            Pour moi Java permet à des personnes "d'éviter" les pointeur du C/C++, même en C++ il y a des techniques qui permettent grandement d'éviter cela.

            ça c'est selon toi, dans la réalité il y a de nombreuses autres raisons d'utiliser la plateforme Java plutôt que le language C++ (et vice-versa). Pell-mêle pour l'utilisation de Java par rapport au C++ (le C++ à d'autres avantage) : la gestion des dépendances, la portabilité, la concision des specs du language, les librairies par défaut, la reflectivité, l"isolation mémoire, les patterns autorisés par la réflectivité, les langage comme groovy ou Kotlin…

            "Java" a ses avantages, notamment pour sa duplication en fonction de la charge sur les serveurs, mais quand je vois des applications juste Desktop faites en Java je me dis "c'est dommage".

            ça n'a rien à voir avec Java, il y a bien des framework supportant de façon transparente des caches/session répartis, l'important, c'est la transparence grâce à l'injection de dépendance, le C++ supporte OpenMPI, et OpenMP, donc…

            Du coup certains sont étonnés de la vitesse de lancement d'un programme "natif" C++ par rapport à son équivalent Java (cf logiciel SQL dont le journal est passé il y a quelques semaines)

            On va dire que ça dépend du logiciel. Java est plus lent à démarrer sur un desktop (pas trop sur téléphone), certe, mais compare les fonctionnalités, le temps de développement et la stabilité d'un dbeaver par rapport à son équivalent C++.. Comme je dis plus haut, le C++ à d'autres avantages, il y a de magnifique développement en C++ qu'il aurait été compliqué de faire autrement.

            • [^] # Re: Y en a qui aiment...

              Posté par  (site web personnel) . Évalué à 7.

              il y a de magnifique développement en C++ qu'il aurait été compliqué de faire autrement.

              va falloir dénoncer pour rester crédible et factuel :-)

            • [^] # Re: Y en a qui aiment...

              Posté par  . Évalué à -2.

              Je n'ai pas dit que je n'aimais pas Java, j'ai dit que le commentaire "plateforme préférée" était un troll.
              Je sais faire la distinction entre langage et plateforme de développement merci ;-) si cela t'énerve c'est dommage.
              Je n'ai pas détaillé les avantages/inconvénients de Java par rapport à C++ j'en ai donné un, sinon il faudrait faire une dépêche pour cela.
              La duplication de code, la réflexivité…existent aussi en C++ mais c'est "moins évident" (bibliothèque, programme style moc (Qt) ou AST Clang par exemple).
              Oui sur le téléphone comme cela est prévu comme le socle de développement (sur Android) cela se lance plus vite, mais je ne parlais pas du téléphone.

              Je trouve juste dommage cet élan d'agressivité du style "je ne suis pas d'accord donc je m'énerve", il n'y aurait pas eu ce lancement gentil au troll je n'aurais pas répondu, mais vu l'énervement quand on répond ou que l'on donne des informations je ne sais pas si cela vaut le coup.
              Même le lien sur le logiciel en C++ a été "moinsé" c'est pour dire :-(
              Bonne journée

              • [^] # Re: Y en a qui aiment...

                Posté par  (site web personnel, Mastodon) . Évalué à 5.

                Je n'ai pas détaillé les avantages/inconvénients de Java par rapport à C++ j'en ai donné un, sinon il faudrait faire une dépêche pour cela.

                En voilà une bonne idée ! Au moins, ça lancera des débats :D

    • [^] # Re: Y en a qui aiment...

      Posté par  . Évalué à 3. Dernière modification le 26 septembre 2018 à 19:59.

      (cf logiciel SQL dont le journal est passé il y a quelques semaines)

      As-tu un lien vers le journal en question ? Ou au moins des précisions permettant de le rechercher ?

    • [^] # Re: Y en a qui aiment...

      Posté par  (site web personnel) . Évalué à 2.

      Pour avoir des temps de démarrage équivalent à ceux de C++, il faut sans doute utiliser GraalVM.

      Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

    • [^] # Re: Y en a qui aiment...

      Posté par  . Évalué à 3.

      Intéressant de voir que l'argument principal pour le C++ c'est : ça démarre plus vite !. À croire qu'il n'y a pas grand chose d'autres…

      • [^] # Re: Y en a qui aiment...

        Posté par  . Évalué à 1. Dernière modification le 27 septembre 2018 à 17:46.

        C'est juste un étonnement d'une personne qui avait essayé le logiciel et non un argument principal sinon il faudrait comme je l'ai dit faire une dépêche.

        Mais les programmeurs java peuvent penser ce qu'ils veulent.
        Voici un autre avantage et le lien de réflexion qui va avec
        https://developers.slashdot.org/story/15/09/22/2145258/cassandra-rewritten-in-c-ten-times-faster

        Comme quoi un troll en java mène à tout :-)

        • [^] # Re: Y en a qui aiment...

          Posté par  (site web personnel, Mastodon) . Évalué à 3.

          sinon il faudrait comme je l'ai dit faire une dépêche.

          Au risque de me répéter, on attend que ça. Fais donc une dépêche !

          Mais les programmeurs java peuvent penser ce qu'ils veulent.
          Voici un autre avantage et le lien de réflexion qui va avec
          https://developers.slashdot.org/story/15/09/22/2145258/cassandra-rewritten-in-c-ten-times-faster

          D'une, le lien ne fonctionne pas, il faut se rabattre sur un bon vieux copier/coller.
          De deux, la dépêche que tu pointes précise bien que ce sont les gens de ScyllaDb qui annoncent être 10 fois plus rapide. Si, sur le papier, je me dis pourquoi pas, ScyllaDb reste une boîte commercial alors je les vois mal dire que leur ré-implémentation est juste aussi rapide que du Java.
          Alors oui, le Java, c'est plus lent (cf. Benchmark game) mais bon, c'est pas non plus x10 à tous les coups.

  • # jlink == abandon de la portabilité ???

    Posté par  . Évalué à 4.

    Il faudra que je relise en détail, mais j'ai l'impression que jlink ne permet pas de se passer du JDK pour exécuter une application. Est-ce que je me trompe ?

    Si c'est le cas cela veut dire que les utilisations professionnelles des applications Java seront payantes sauf à penser à remplacer le JDK d'Oracle par OpenJDK et obliger l'utilisateur final à installer un environnement de programmation inutile pour lui.

    Si ce n'est pas le cas, j'ai l'impression que ça implique qu'on ne construise l'application finale que pour la plateforme sur laquelle on utilise jlink. Or, un des avantages majeurs pour moi de Java est que je peux développer et compiler sous Linux une application en sachant qu'elle pourra être utilisée telle quelle sous MS-Windows.

    • [^] # Re: jlink == abandon de la portabilité ???

      Posté par  (site web personnel) . Évalué à 4.

      Si ce n'est pas le cas, j'ai l'impression que ça implique qu'on ne construise l'application finale que pour la plateforme sur laquelle on utilise jlink.

      C'est ça!

      Or, un des avantages majeurs pour moi de Java est que je peux développer et compiler sous Linux une application en sachant qu'elle pourra être utilisée telle quelle sous MS-Windows.

      Cette promesse n'a jamais été réellement tenue sur desktop. Ce n'est pas tellement la faute de Sun/Oracle, il aurait fallu un petit effort des OS pour embarquer Java.

      C'est d'ailleurs ce qui a été fait sur mobile par Android, mais malheureusement avec un java made in Google.

      Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

      • [^] # Re: jlink == abandon de la portabilité ???

        Posté par  . Évalué à 4.

        Cette promesse n'a jamais été réellement tenue sur desktop. Ce n'est pas tellement la faute de Sun/Oracle, il aurait fallu un petit effort des OS pour embarquer Java.

        Pour les applications scientifiques auxquelles je participe, ça marche plutôt bien depuis plus de 15 ans et j'aimerais que ça puisse continuer.

  • # Quid de Libreoffice

    Posté par  . Évalué à 3.

    J'ai une machine Windows (la machine de mon paternel) qui n'utilise plus Java que pour le solveur de Libreoffice. Ça implique que j'installe un JDK et que je me débrouille pour surveiller manuellement les mises a jour? Ça en fait de la charge de travail pour une fonction utilisée trois fois par an…

    • [^] # Re: Quid de Libreoffice

      Posté par  . Évalué à 2.

      Pourquoi "surveiller manuellement les mises a jour" ?

      • [^] # Re: Quid de Libreoffice

        Posté par  . Évalué à 3. Dernière modification le 28 septembre 2018 à 09:56.

        Je suppose à cause de:

        Windows et MacOS ne bénéficieront plus de mises à jour automatique.

        « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

        • [^] # Re: Quid de Libreoffice

          Posté par  . Évalué à 1.

          Il n'est pas clair pour moi, en l'absence de référence, si cela concerne OpenJDK en général ou Oracle seulement.

          • [^] # Re: Quid de Libreoffice

            Posté par  . Évalué à 3.

            Pour le moment, openjdk ne fournit pas de binaire à ma connaissance, donc la question ne se pose pas trop.

            « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

            • [^] # Re: Quid de Libreoffice

              Posté par  (site web personnel) . Évalué à -1.

              Si Windows et MacosX étaient de bons OS, ils intégreraient des packages pour Java. Les distributions linux le font bien…

              Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

              • [^] # Re: Quid de Libreoffice

                Posté par  . Évalué à 3.

                Quand Microsoft l'a fait, Sun a râlé.

                « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

                • [^] # Re: Quid de Libreoffice

                  Posté par  (site web personnel) . Évalué à 4.

                  Parce qu'ils ont voulu faire un Java by Microsoft et pas un vrai Java.

                  Heureusement que Sun a râlé sinon ça aurait donné… Ben un peu ce qu'à fait Google avec Android: un java incompatible…

                  Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.

            • [^] # Re: Quid de Libreoffice

              Posté par  . Évalué à 5.

              Tu as adoptopenjdk pour ça

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.