vignette|Une image 3d de Duke, mascotte officielle de la technologie Java. Un compilateur Java est un compilateur pour le langage de programmation Java. Le format de sortie le plus courant pour un compilateur Java est des fichiers .class contenant le bytecode Java plate-forme agnostique. Il existe aussi des compilateurs produisant du code machine optimisé pour une combinaison matériel/système d'exploitation particulière.

La machine virtuelle Java (JVM) charge les fichiers .class et interprète le bytecode ou le compile à la volée et peut également l'optimiser en utilisant la compilation dynamique.

Exemples de compilateurs java javac, le compilateur Java de Sun Microsystems, livré avec le JDK. ECJ (), le compilateur Java intégré à l'environnement de développement intégré Eclipse. GCJ (), inclus dans la GNU Compiler Collection (GCC), qui génère du code machine grâce au back-end de GCC. Jikes, un projet open source de compilateur Java créé par IBM.

Autres JavaCC, un compilateur de compilateurs pour Java.

Historique et perspectives

Le premier compilateur java a été celui de Sun, diffusé avec le langage Java.

Fonctionnement et théorie

Les compilateurs Java sont en général distribués en tant qu'outils en ligne de commande, même si des IDE existent. Il existe également une (JSR 199).

Les compilateurs Java ont la particularité de compiler le langage Java en un bytecode Java.

Apports et limitations

Apports

Le compilateur Java offre de l'interopérabilité et de la portabilité, tant au niveau du code source, du code binaire produit que de son invocation.

Certains compilateurs Java sont d'usage gratuit. D'autres sont open source.

Limitations

Standardisation et normalisation

Les compilateurs Java doivent respecter les spécifications publiées par Sun microsystems. Il s'agit des spécifications et « »..

En plus de son travail de compilation, le compilateur peut traiter les annotations, en accord avec la « »..

Usages et applications

Aspects économiques et sociaux

Notes et références

Bibliographie

Annexes Articles connexes

Liens externes

Vocabulaire et notations

Catégorie:Compilateur Catégorie:Java (langage) Catégorie:Plateforme Java