Java : Oracle sur le point de donner le coup de grâce au projet Harmony
Utilisé par Google dans le SDK d'Android ?
Le 2010-10-18 11:59:55, par Idelways, Expert éminent sénior
Mise à jour du 18/10/2010
Oracle aurait annoncé, lors d'une réunion réunissant les leaders des sociétés qui supportent Java, qu'il ne comptait pas céder de licence au projet Apache Harmony, l'implémentation open-source du langage.
Cette rencontre, qui a eu lieu à Bonn les 5 et le 6 Octobre dernier, a été marquée par l'annonce de la collaboartion d'IBM avec Oracle sur l'OpenJDK. Une des interprétations de cette nouvelle était que Oracle tentait ainsi de mettre fin au projet Harmony, dont Big-Blue était jusque là le plus gros contributeurs avec 9 membres (lire ci-avant).
Cette fuite semble renforcer cette thèse. Oracle, par la voie de son PDG Larry Ellison, aurait ainsi estimé qu'offrir une licence au projet Harmony serait préjudiciable à l'avenir de Java, sens préciser le pourquoi du comment.
Néanmoins, le motif d'un refus aussi catégorique semble en relation avec le litige qui oppose sa société à Google sur Android. L'OS mobile qui utilise justement un sous-ensemble du projet Harmony.
Le géant des applications professionnelles et des serveurs souhaiterait en effet imposer Java Mobile Edition (Java ME) pour les développements mobiles à la place du projet Harmony (et de ses dérivés, dont Android) qui repose, lui, sur l'édition standard de Java (Java SE).
Ironiquement, trois ans en arrière, Oracle travaillait main dans la main avec le Java Community Process (JCP) pour que Harmony soit testé et certifié compatible avec le standard officiel... détenu à l'époque par Sun.
Mais la présence de code propriétaire dans les tests de compatibilité empêcherait, selon la fondation Apache, le projet Harmony d'être certifié.
IBM a longtemps milité pour que Sun (puis Oracle) libèrent les Java Test Compatibly Kits (TCKs), le seul composant de Java, avec Java FX non-disponible sous licence open-source.
En vain.
Selon les dernières rumeurs, qu'accrédite l'accord public avec Oracle, IBM aurait donc décidé d'abandonner le projet Harmony contre une licence permanente sur Java. Sa licence actuelle de 10 ans arrivant à échéance en 2015.
Le coup de grâce pour le projet Harmony ?
Et vous ?
Qu'en pensez-vous ?
Le projet Harmony survivra-t-il a ces mauvaises nouvelles ?
En collaboration avec Gordon Fowler
Oracle aurait annoncé, lors d'une réunion réunissant les leaders des sociétés qui supportent Java, qu'il ne comptait pas céder de licence au projet Apache Harmony, l'implémentation open-source du langage.
Cette rencontre, qui a eu lieu à Bonn les 5 et le 6 Octobre dernier, a été marquée par l'annonce de la collaboartion d'IBM avec Oracle sur l'OpenJDK. Une des interprétations de cette nouvelle était que Oracle tentait ainsi de mettre fin au projet Harmony, dont Big-Blue était jusque là le plus gros contributeurs avec 9 membres (lire ci-avant).
Cette fuite semble renforcer cette thèse. Oracle, par la voie de son PDG Larry Ellison, aurait ainsi estimé qu'offrir une licence au projet Harmony serait préjudiciable à l'avenir de Java, sens préciser le pourquoi du comment.
Néanmoins, le motif d'un refus aussi catégorique semble en relation avec le litige qui oppose sa société à Google sur Android. L'OS mobile qui utilise justement un sous-ensemble du projet Harmony.
Le géant des applications professionnelles et des serveurs souhaiterait en effet imposer Java Mobile Edition (Java ME) pour les développements mobiles à la place du projet Harmony (et de ses dérivés, dont Android) qui repose, lui, sur l'édition standard de Java (Java SE).
Ironiquement, trois ans en arrière, Oracle travaillait main dans la main avec le Java Community Process (JCP) pour que Harmony soit testé et certifié compatible avec le standard officiel... détenu à l'époque par Sun.
Mais la présence de code propriétaire dans les tests de compatibilité empêcherait, selon la fondation Apache, le projet Harmony d'être certifié.
IBM a longtemps milité pour que Sun (puis Oracle) libèrent les Java Test Compatibly Kits (TCKs), le seul composant de Java, avec Java FX non-disponible sous licence open-source.
En vain.
Selon les dernières rumeurs, qu'accrédite l'accord public avec Oracle, IBM aurait donc décidé d'abandonner le projet Harmony contre une licence permanente sur Java. Sa licence actuelle de 10 ans arrivant à échéance en 2015.
Le coup de grâce pour le projet Harmony ?
Et vous ?
En collaboration avec Gordon Fowler
-
nickylaMembre actifAttention avec le mot évoluer, lequel, selon le contexte, peut mener à des résultats ayants des effets complètement opposés ...le 16/11/2010 à 12:56
-
Traroth2Membre éméritePrétendre que ça serait Apache qui serait responsable de l'immobilisme du monde Java est une imposture. De rachats en projets fumeux (JavaFX), c'est bien Sun/Oracle le seul responsable ! Le retard de, quoi, 2 ans de Java 7 en est la preuve éclatante.
Si jamais Apache quitte le JCP, il n'y a aucune raison que ça change quoi que ce soit à cette situation. Par contre, on sait ce que ça peut coûter en terme de projets...
On appréciera au passage le procédé : Oracle essaie d'imposer sa propre implémentation de Java (et bien sûr la nouvelle version payante Java Premium) non pas en faisant en sorte qu'elle soit meilleures, mais en interdisant aux autres de lu faire concurrence.
C'est sûr que comme ça, le monde Java va vachement avancer !!!le 16/11/2010 à 13:58 -
UtherExpert éminent séniorLe titre est trompeur. Je vois mal Apache quitter complètement la communauté Java. Ils quittent juste le JCP ce qui est très différent.
S'il abandonnaient tous leur projets relatifs à Java, heu... J'ose même pas imaginer l'impact.
Quant aux "barrières placées par l'acquéreur de Sun Microsystems", en fait elles n'ont pas été placées par Oracle mais par Sun, il y a bien longtemps déjà. Oracle n'a fait que les confirmer.le 10/12/2010 à 8:27 -
Emmanuel DelogetExpert confirméOu qu'ils n'avaient guère le choix, Oracle ayant exprimé sa position : même si le JCP votait non à sa proposition, il allaient quand même lancer les études sur les versions suivantes de Java, sans consulter personne et au mépris des règles mises en place pour ce groupe de travail (c'est à dire au mépris du contrat ayant valeur légale signé entre les différents membres du programme). En gros, Oracle a dit : soit vous nous suivez et ont vous fait bonne presse, soit vous ne nous suivez pas et non seulement on continue quand même, mais en plus on vous fait mauvaise presse. Du coup, certains votants ont exprimé leur désacoord en commentaire, tout en votant "oui". Seul Apache a voté "non", et Oracle n'a pas perdu son temps : ils deviennent ceux qui veulent ralentir le développement de Java pour des considérations médiocre (c'est plausible d'après vous ?) alors que Oracle et le JCP sont ceux qui veulent faire avancer Java pour le meilleur des mondes (toujours plausible ?).
Envoyé par _skip
Il existe des implémentation Open Source de Java, et sans accès à un kit de test de compatibilité, ces implémentations ne peuvent pas être testées. Face à un Oracle trop campé sur ses positions, et face à des violations de plus en plus fréquente des termes de la licence Open Source Java (après vérification, il s'avère effectivement que la guère que Oracle mène contre Harmony soit contraire aux accords signés entre Oracle, le JCP et la Fondation Apache), j'imagine mal les dévelopeurs Apache travailler principalement sur les JVM Oracle (ou IBM ; qui a appuyé la décision d'Oracle. Et obtenu une licence de 10 ans pour continuer de profiter des développements Java effectués par Oracle).Le seul projet directement menacé, c'est harmony. Et sans connaître sa part de marché je doute qu'il soit si populaire que ça. C'est donc une perte que l'écrasante majorité des entreprises peut absorber sans aucun dégât à l'heure actuelle.
Quand à menacer les entreprises, damned, Google se base dessus pour aider à la définition d'Android ! Combien d'entreprises sont elles concernées ? Apache s'en sert aussi, et combien d'entreprises sont concernées par les produits de l'ASF ?Il est toujours possible de développer des implémentations de frameworks par exemple en se basant sur les spécifications.Oracle n'a aucun intérêt à pousser java si c'est pour que 99% des projets en bénéficie gratuitement sans lui rapporter un centime.Et puis combien de projets Java sont touchés par les intransigeances d'Oracle ?
- Les JVM tierces qui ne sont pas libres au niveau des licences
- HudsonJe suis peut-être optimiste mais
- les projets Apache vont perdurer puisqu'ils sont le fruit de besoins
- idem pour les autres projets majeurs du libres (ou pas) comme Hibernate, Spring, ...Au point ou ca en est C# et Mono, c'est presque moins dangereux pour l'avenir.
Pour terminer, un des liens de la news pointe sur le blog de Jagielski - et ce blog explique beaucoup de choses concernant la décision d'Apache. Il serait bon de le lire, vous verrez que tout n'est pas si clair dans le rôle d'Oracle. Selon Jagielski, Apache ne poursuit pas que ses intérêts. Ils souleve un point qui tends à montrer que Oracle fait le forcing pour ne pas respecter les termes de la licence Open Source de Java, tout en faisant pression sur les membres commerciaux du JCP pour faire passer des changements qui ne sont souhaitables que pour Oracle. Ne vous laissez pas contaminer par la version Oracle de l'histoire.
Enfin, la fondation Apache n'est pas un organisme dictatorial : la décision n'a pas été prise pour une question d'ego ; elle a été discuté au sein de la fondation et avec les utilisateurs. Et je ne doute pas qu'elle a nécessité un consensus large. Dire que c'est une décision de la communauté Apache pour la communauté Apache me parait très réducteur. Un poil trop en fait.le 14/12/2010 à 9:58 -
B.AFMembre chevronnéCe sont des "guéguérres" assez puériles au final qui n'améne rien à personne.
Faire du libre, ça ne veut pas dire pouvoir et faire n'importe quoi. Quand le langage reste 3 ou 4 ans sans évolutions majeures parce que les chapelles philosophiques ne s'accordent pas ou plus, il est temps de penser à un autre mode de fonctionnement. Et peut être que de revenir à une gestion de produit plus traditionnelle est une solution.
Là ça ne fait que morceller encore plus une technologie dont l'avenir commence à m'inquiéter sérieusement.le 18/11/2010 à 14:33 -
Traroth2Membre émériteAh bon ? Même si la conséquence, c'est la fin des projets open-sources et libres autour de Java ?
Java sans Eclipse, Spring, Tomcat, Struts, Maven, Ant, JUnit, etc. Bonne nouvelle pour Java, effectivement...
Un petit conseil : va sur apache.org et regarde le nombre de projets reposant sur Java, et combien d'entre eux sont des projets vitaux pour l'avenir de la plateforme : ActiveMQ, Ant, Cassandra, Commons, Geronimo, Hadoop, Harmony, Log4J, Lucene, Maven, Struts, Tomcat, Velocity, Wicket, etc.le 10/11/2010 à 16:22 -
eclesiaRédacteurUne arme n'est dangereuse que dans de mauvaises mains.
On vient de vivre la succession d'un despote 'creatif' et 'ouvert' au dialogue a un despote autoritaire (menace sur divers projet openoffice/hudson) et egocentrique (fermeture de divers projet).
(Je caricature)le 10/12/2010 à 9:20 -
tchize_Expert éminent séniorautant je comprend que leur position est difficile, autant leur décision (apache) se résume à "c'est un process basé sur un vote des différent membres, je suis dans la minorité qui était contre, et bien que j'étais minoritaire, vous n'avez pas fait ce que je voulais que vous fassiez. Alors puisque vous faites pas comme je veux, je me barre". Je trouve que ça fait un peu gamin comme décision et justification, vu de l'extérieur.le 13/12/2010 à 17:10
-
Emmanuel DelogetExpert confirméNote : ecrit avec un iPad. Clavier compliqué. Pas conseillé pour la redaction de long messages...
Le problème n'est pas la qualité des implementations de la fondation Apache, mais les fait qu'elles sont omniprésentes sur le web (et ailleurs). Combien d'intranet basé sur tomcat ? Combien de site tourant sur Apache ? Si Sun a créé un langage et un environnement solide, il faut reconnaitre que c'est la fondation Apache qui a fait enormément ces dernieres annees pour son developpement.
Avec a la clef un point problématique pour Oracle : si la suite dela fondatiion se met à ne plus suivre le standard Java, combien d'entreprises vont abandonner leur suite qui ne serait plus standard, quand on sait le cout du developpement d'un intranet complexe ? A mon humble avis, une minorité. Du coup, Java se fractionnerait, ou Oracle serait obligé de suivre, a moins de fermer de nouveau le code de la machine virtuelle ou de l'environnement. Ce qui serait vraiment un coup dur pour Java - car si de nouveaux decveloppements doivent voir le jour, les entreprises risquent fort de perdre la confiance qu'ils ont mis tznt de temps a acquerir.
C'est un tournant : s'il est mal négocié, Oracle peut parvenir a faire ce que Sun a toujours evité, comprenant que son avenir passait par cette plateforme : car nonobstant les qualité (réelles ou supposées ; mais ne tollons pas sur ce sujet, ce n'est pas le debat) de ce langage, Oracle pourrait provoquer sa fin, puis son abandons, a moyenne echeance.
C'est une erreur grave, a laquelle ils vont maintenant tenter de trouver une soldution a l'amiable. La raison pour laquelle la fondation ne se presse pas, c'est qu'ils ont tout a gagner a jouer la montre : petit a petit, les clients d'Oracle vont venir dire a la societe "hé, vous vous rappelez que nous, on a besoin de savsoir ce qui se passe, et ce qui va se passer ?", ce qui pourrait a terme faire plier Oracle. Et si Oracle ne cède pas, et bien la fondation a une base d'utilisateurs tout a fait consequente, et elle peut se passer d'eux - ils representent une force capable de créer un fork tout a fait viable du langage, et peuvent entrainer de nombreux participants a leur suite (dont une petite société du nom de Google ; m'etonnerais qu'a moitié que Google reprenne le fork de MySQL...)
Bref, tout ca pour dire qu'Elisson a singulierement manqué de vision sur ce coup - et que ca ne va pas les aider a regagner la confiance des afficionados de l'Open Source qu'ils ont violenté récemment.le 13/12/2010 à 23:14 -
Emmanuel DelogetExpert confirméAucun des intervenant ayant pris la parole dans cette histoire n'est tout blanc. On peut tou prendre avec des pincettes, mais lorsqu'on m'explique les choses telle que la fondation Apache le fait, je n'ai aucune raison d'y voir quelque chose de malintentionné de leur part. C'est à ça que ça sert la transparence. Et comme la fondation est la seule source d'explications claires et transparentes, il me semble naturel de considérer que leur point de vue est plus fondé que celui d'Oracle. Ou de Google. Ou d'un autre.
Maintenant, il me semble en lisant les posts ici que beaucoup de monde en veut à la fondation Apache, ce qui a tendance à conforter la position d'Oracle. Je vous demande à nouveau de lire ce que vous trouverez sur le sujet : vous verrez que le comportement d'Oracle est seul responsable de cet affrontement - comment Apache peut-il être responsable des interdictions imposées par Oracle ? Depuis son entrée dans le JCP, la fondation se bat pour la libération du TCK : Oracle leur a dit d'aller se faire voir en gras, leur a dit que de toute façon ils se foutaient royalement de ce qu'ils avaient à dire, et qu'en gros ils n'avaient qu'à suivre les décisions des adules, de fermer leur bouche et de relayer le foutage de g. auprès de leurs utilisateurs. Position difficile à tenir.
L'inconditionnalité de la redistribution est le point d'achoppement dans cette affaire. Si pour redistribuer Harmony, Apache a besoin de payer une licence à Oracle et que chaque acquéreur a besoin de faire de même, cette inconditionnalité n'est plus possible.
De part leur nature (redistribution des sources sans avoir à en avertir les ayants droits), aucune licence Open Source ne peut imposer un paiement. La gratuité est corrolaire de la notion de logiciel libre. Tu peux le tourner comme tu veux, mais si j'ai la possibilité de redistribuer un logiciel open source, alors j'ai la possibilité de le faire gratuitement. Si je ne peux pas le faire gratuitement, alors le logiciel n'est pas libre puisque certains ne peuvent pas avoir accès à ce code source.
Harmony ne pourrait pas du tout être distribué sous une quelconque licence Open Source. Qu'elle soit la licence Apache ou une autre licence ne change rien à l'affaire.Dans la fournée, le fait qu'IBM délaisse Harmony pour OpenJDK est aussi un signe. Mais cet état de fait existe avant Oracle, c'est Sun qui l'a instauré.
Pour info, Apache n'a jamais dit ne pas vouloir de Java 7. Apache dit : comme condition pour pouvoir évoluer vers Java 7, il faut libérer le TCK - ce qu'Oracle refuse de faire. Ce n'est quand même pas la même chose. Il est peut-être nécessaire que Java évolue (encore que je ne vois pas ce qui manque au langage. Il y a tant de trous que ça ? Ce n'est pas mon impression...).
Pour info 2, le JCP ne définit pas que ce qui sera ou non contenu dans la prochaine évolution du langage. Elle définit aussi les librairies, la VM, et par conséquent, le TCK. C'est une communauté autour de Java, pas une instance technique de définition de grammaire d'un langage. Il est faux de croire que le débat autour d'Harmony n'est pas lié au travail du JCP : sans TCK libre, il est difficile voire impossible de vérifier de manière pratique une implémentation libre particulière de Java (dans son ensemble). Du coup, définir des évolutions dans Java est nettement plus complexe, non ?
Vous utilisez - vous ne voyez pas nécessairement les implications d'une telle décision. Mais pour que vous puissiez utiliser sereinement Java, il faut quand même s'assurer que les différentes plateformes sont interopérables - sans quoi, le write once, run everywhere va avoir un sérieux problème et vous déciderez de vous même de ne plus utiliser Java pour ne pas vous enfermer avec une JVM particulière. Vous pouvez décider que ce combat ne vous concerne pas, mais ça ne veut pas dire que c'est le cas. Ca vous concerne de manière directe.le 14/12/2010 à 15:47