Page d'accueil encyclopedie-enligne.com en page d'accueil
Liste Articles: [0-A] [A-C] [C-F] [F-J] [J-M] [M-P] [P-S] [S-Z] | Liste Catégories | Une page au hasard | Pages liées

Java et logiciel libre

Bien que Java ne soit pas officiellement libre, sa licence est suffisamment ouverte pour avoir permis l'éclosion d'un grand nombre d'outils libres, et ce dans les domaines les plus variés.

Sommaire

Discussion sur la licence de Java

La licence de Java permet :

La licence Java ne permet pas :

Cette licence ne permet pas de considérer la technologie Java comme libre. Elle permet en revanche de créer des outils, des logiciels et des bibliothèques libres écrites en Java.

Un organisme indépendant, le JCP, permet de faire normaliser ces outils, afin d'unifier l'effort de développement et d'aider la promotion des ces outils.

De nombreuses voix s'élèvent depuis le début de 2004 pour que Sun libère le code de Java. La demande initiale vient d'IBM, suivie de personnalités du monde du logiciel libre, comme Eric Raymond.

La politique de Sun

La politique de Sun vise à conserver le contrôle sur l'évolution de Java, ce qui explique son refus de placer la JVM et le compilateur Java en open-source.

Sun a placé par le passé la technologie Jini, basée sur Java, sous une licence que Sun prétendait open-source. Ceci était toutefois remis en cause, notamment par Linus Torvalds (cf. « Il était une fois Linux »).

Toutefois, après avoir placé NetBeans en open source en juin 2000, on assiste à une évolution de Sun, qui a placé des éléments des packages Java en open source lors de la conférence JavaOne 2004 :

D'une manière générale, on peut noter un engagement plus fort de Sun envers le logiciel libre depuis quelque temps :

Outils Java libres

Les outils libres pour Java appartiennent essentiellement à 4 catégories :

Outils de développement


Nom Version actuelle (date) Description Licence Lien externe
Ant 1.6.2 (03/09/2004) Outil de construction d'application Apache Software License 2.0 http://ant.apache.org/
Avalon 4.2 Outil de développement de composants par design patterns Apache Software License http://avalon.apache.org/index.html
Eclipse 3.0 (03/09/2004) Environnement de développement Common Public License 1.0 http://www.eclipse.org/
Jakarta Cactus 1.6.1 Framework de test pour applications Web, basé sur JUnit Apache Software License http://jakarta.apache.org/cactus/index.html
GNU Compiler for Java (GCJ) 3.4.2 (version de GCC) Compilateur permettant la compilation native, sur des plates-formes variées (Linux sur PC, Alpha, Itanium, PowerPC, Athlon 64, SH-3/4, Solaris sur SPARC, BSD sur PC, Irix, Windows, MacOS X...), inclus dans GCC GPL http://gcc.gnu.org/java/
jEdit 4.2 Editeur de texte orienté programmation écrit en Java GPL http://www.jedit.org/index.php
Jikes 1.21 Compilateur IBM Public Licence http://www-124.ibm.com/developerworks/oss/jikes/
Jakarta JMeter 2.0.1 Outil de mesure des performances Apache Software License http://jakarta.apache.org/jmeter/index.html
JSwat 1.5.4 Debuggueur graphique GPL http://www.bluemarsh.com/java/jswat/
JUnit 3.8.1 Framework de test unitaire automatisé, orienté Extreme Programming Common Public License http://www.junit.org/index.htm
Kaffe 1.0.7 Machine virtuelle GPL http://www.kaffe.org/
Maven 1.0 (13/07/2004) Outil d'intégration d'application et de gestion de projet Apache Software License 2.0 http://maven.apache.org/
NetBeans 3.6 (03/09/2004) Environnement de développement Sun Public License http://www.netbeans.org/
SableVM 1.1.6 Machine virtuelle LGPL http://www.sablevm.org/
Jakarta Watchdog 4.0 Outil de validation de code pour servlets et JSP Apache Software License http://jakarta.apache.org/watchdog/index.html
XDoclet 1.2.2 Outil de génération de code Apache Software License http://xdoclet.sourceforge.net/xdoclet/index.html
Jalopy 1.3 Outil permettant la mise en page du code java selon des regles prédefinies BSD License http://jalopy.sourceforge.net/
Checkstyle 3.5 Outil de controle normes de développement LGPL http://checkstyle.sourceforge.net/


Serveurs


Nom Version actuelle (date) Description Licence Lien externe
Jakarta Tomcat 5.5 (03/09/2004) Serveur Web et conteneur de servlets, compatible JSP Apache Software License 2.0 http://jakarta.apache.org/tomcat/index.html
Jetty 5.0 Serveur Web et conteneur de servlets, compatible JSP Apache Software Licence http://www.mortbay.org/jetty/index.html
JBoss 4.0 Conteneur et serveur d'EJB, de servlets et de JSP (par embarquement de Tomcat), totalement compatible J2EE LGPL http://www.jboss.org/index.html
JOnAS 4.1.4 Conteneur et serveur d'EJB LGPL http://jonas.objectweb.org/
Enhydra Server 5.1-15 Conteneur et serveur de servlets orienté XML LGPL http://enhydra.objectweb.org/
Java Apache Mail Enterprise Server (James) 2.2.0 Serveur de mail et de news (protocoles SMTP, POP3 et NNTP) Apache Softawre Licence http://james.apache.org/
JServ 1.1.2 Conteneur et serveur de servlets compatible JSP. JServ est un projet en sommeil et il n'evolue plus Apache Softawre Licence http://archive.apache.org/dist/java/
Geronimo 1.0-M2 Serveur fédérant de nombreux projets Java d'Apache dans le but de créer un serveur J2EE complet et innovant, autour de JMX Apache Softawre Licence http://geronimo.apache.org/
OpenEJB 0.9.2 Conteneur et serveur d'EJB Spécifique : http://www.exolab.org/license.html http://openejb.exolab.org/


Bibliothèques et frameworks


Nom Version actuelle (date) Description Licence Lien externe
Cocoon 2.1 (03/09/2004) Framework de développement Web basé sur XML Apache Software License 2.0 http://cocoon.apache.org/
SWT Bibliothèque graphique
JDOM 1.0 RC1 Bibliothèque de parsing XML spécifique, proche de l'Apache Software Licence http://www.jdom.org/
Xalan Moteur de transformation XSL
Xerces Moteur de parsing XML
Jakarta Struts 1.2.2 Framework de pubilication Web Apache Software Licence http://struts.apache.org/
JAC Bibliothèque pour la programmation orientée aspect
Colt Bibliothèque pour le calcul sicentifique http://hoschek.home.cern.ch/hoschek/colt/
DOM4J Bibliothèque de parsiong XML http://www.dom4j.org/
Jeks 1.0.2 Tableur et blibliothèque permettant d'ajouter des fonctions de tableur à un logiciel GPL http://www.eteks.com/jeks/
Castor 0.9.5.3 Bibliothèque de mapping XML, de mapping relationnel/objet et de persistance, compatible JDO spécifique, proche de la licence BSD : http://castor.exolab.org/license.html http://castor.exolab.org/
OpenJMS 0.7.6.1 Bibliothèque JMS
Tyrex 1.0.1 Bibliothèque de gestion de transaction JTA, compatible JDBC et JNDI spécifique, proche de la licence BSD : http://tyrex.sourceforge.net/license.html http://tyrex.sourceforge.net/
GNU Classpath 0.10 Implémentation de la bibliothèque Java standard GPL http://www.gnu.org/software/classpath/
iText 1.02b Bibliothèque permettant de générer du PDF, mais aussi du XML, du HTML et du RTF LGPL et MPL http://www.lowagie.com/iText/
SugarCubes 3.0.3 Bibliothèque pour le traitement multithreadé, puis performante que les Java Threads standards http://www-sop.inria.fr/mimosa/rp/SugarCubes/
JADE 7.0 Bibliothèque utilitaire offrant des services aussi variés que des ofcntionnalités temps réel, du calcul scientifique, la prise en compte d'unités de mesure et de monnaies, du traitement avancé de chaînes de caractères... LGPL http://jade.dautelle.com/
JContractor 0.0.2 Bibliothèque permettant la programmation par contrat Apache Software Licence http://jcontractor.sourceforge.net/
JFinance 0.3.0 Bibliothèque pour applications financières GPL http://www.object-refinery.com/jfinance/
JWorkbook 0.2.0 Bibliothèque permettant de lire et d'ecrire des fichiers au format du tableur Gnumeric GPL http://www.object-refinery.com/jworkbook/
JCommon 0.9.5 Bibliothèque utlisée par JFreeChart et JFreeReport. Contient des fonctions de traitement de chaînes de caractères, d'interface graphique, de traitement de dates, de sérialisation et de traitement XML GPL http://www.jfree.org/jcommon/
JFreeChart 0.9.20 Bibliothèque permettant de créer des histogrammes, courbes, charts GPL http://www.jfree.org/jfreechart/
JFreeReport 0.8.4.10 Bibliothèque permettant de générer des reports, aux formats PDF, HTML, CSV, Excel ou texte GPL http://www.jfree.org/jfreereport/
JGraph 5.0 Bibliothèque de génération d'organigramme et de schémas LGPL http://www.jgraph.com/
JUMP 0.4.1 Bibliothèque de calcul scientifique BSD http://jump-math.sourceforge.net/
MX4J 2.0.1 Bibliothèque JMX Apache Software Licence http://mx4j.sourceforge.net/
Jakarta Byte Code Engineering Library (BCEL) 5.1 Bibliothèque de manipulation du bytecode Apache Software Licence http://jakarta.apache.org/bcel/index.html
Jakarta Bean Scripting Framework (BSF) 2.3.0-rc1 Framework permettant le scriptage d'une application à l'aide de différents langages (Javascript, Tcl, Python, Rexx, XSLT...) Apache Software Licence http://jakarta.apache.org/bsf/index.html
Jakarta Element Construction Set (ECS) 1.4.2 Bibliothèque de génération de HTML Apache Software Licence http://jakarta.apache.org/ecs/index.html
Jakarta HiveMind 1.0-rc-1 Framework SOA Apache Software Licence http://jakarta.apache.org/hivemind/index.html
Jakarta ORO 2.0.8 Bibliothèque de gestion des expressions régulieres, fournissant également des expressions régulières compatibles Perl 5, Awk...
Jakarta POI 2.5.1 Bibliothèque permettant de lire et d'écrire des fichiers dans différents formats créés par Microsoft (Word, Excel, OLE2...) Apache Software Licence http://jakarta.apache.org/poi/index.html
Jakarta Regexp 1.3 Bibliothèque de gestion des expressions régulières Apache Software Licence http://jakarta.apache.org/regexp/index.html
Jakarta Tapestry 3.0 Framework Web constituant une alternative aux JSP Apache Software License http://jakarta.apache.org/tapestry/index.html
Jakarta Turbine 2.3 Framework Web Apache Software Licence http://jakarta.apache.org/turbine/index.html
Jakarta Velocity 1.4 Moteur de substitution basé sur un langage propre, le Velocity Template Language (VTL) Apache Software Licence http://jakarta.apache.org/velocity/index.html
Log4J 1.2.8 Bibliothèque de journalisation de l'exécution d'une application. À noter que des projets analogues existent pour C++, .net, Perl, PHP et PL/SQL Apache Software Licence http://logging.apache.org/log4j/docs/index.html
Axis 1.1 Bibliothèque SOAP. Existe aussi pour C++ Apache Software Licence http://ws.apache.org/axis/


Logiciels complets


Nom Version actuelle (date) Description Licence Lien externe


Autres outils


Nom Version actuelle (date) Description Licence Lien externe
Lenya 1.2 Système de gestion de contenu basé sur Apache Cocoon Apache Software License 2.0 http://cocoon.apache.org/lenya/
Jython 2.1 Interpréteur Python écrit en Java spécifique : http://www.jython.org/license.html http://www.jython.org/
BeanShell http://www.beanshell.org/
AspectJ 1.2 Extension pour la programmation orientée aspect Common Public License 1.0 http://eclipse.org/aspectj/
Jakarta Lucene 1.4 Moteur de recherche Apache Software License http://jakarta.apache.org/lucene/docs/index.html
Jakarta Slide 2.0 Repository pour serveur Web, compatible WebDAV Apache Software License http://jakarta.apache.org/slide/index.html


Liens externes



This site support the Wikimedia Foundation. This Article originally from Wikipedia. All text is available under the terms of the GNU Free Documentation License Page HistoryOriginal ArticleWikipedia