Document-page-setup.png Attenzione: questo articolo è ancora incompleto e in fase di scrittura da parte del suo autore.

Sentitevi liberi di contribuire, proponendo modifiche alla guida tramite l'apposita pagina di discussione, in modo da non interferire con il lavoro portato avanti sulla voce. Per altre informazioni si rimanda al template.



Introduzione

Gli utenti Debian hanno sempre avuto un rapporto difficoltoso con Java, dovuto prevalentemente alla sua licenza che ne ha ostacolato, per molto tempo, l'inserimento nei repository Debian.

Tuttavia, a partire dal 17 maggio 2006 è disponibile, nei repository non-free, la versione ufficiale Sun del compilatore ed interprete.

Questa guida vuole dare all'utente una visuale il più possibile completa dello stato di Java all'interno di Debian, mostrando le soluzioni possibili per la sua installazione e le alternative, passando per la policy relativa a Java ed alle applicazioni scritte con questo linguaggio.

La Policy Java

Java in Debian

Lo scopo di Debian è quello di fornire una piattaforma costituita al 100% da software libero. Per questa ragione, quindi, alcuni programmi Java non sono disponibili nella distribuzione standard di Debian: non già, certamente, per motivi tecnologici. Al contrario, sono nati diversi progetti collaterali - subito incorporati nel sistema Debian - allo scopo di fornire un'infrastruttura Java, con licenza "libera".

Il 17 maggio 2006, è stato annunciato il rilascio dei pacchetti per la versione ufficiale del compilatore ed interprete: quella della Sun. La nota azienda, infatti, fino a quel momento aveva riservato i diritti sul proprio software, impedendo così la libera fruizione della versione ufficiale di Java alla comunità "open source". Tuttavia, con il rilascio di una nuova licenza - la DLJ - il 16 maggio 2006 la Sun si è aperta al mondo "open source".

Allo stato attuale, dunque, Debian rende disponibili le seguenti implementazioni Java:

  • Cacao
  • Free-java-sdk
  • Kaffe
  • Javacc
  • Gcj
  • Sun Java
  • Blackdown Java

Applicazioni scritte in Java

La policy Debian ammette l'inserimento, all'interno dei repository, di applicazioni scritte in Java. L'unica restrizione è legata all'ambiente in cui può essere compilata ed eseguita. Le applicazioni, infatti, devono girare su una o più JVM presenti in Debian (quindi, prima d'ora, non era possibile trovare nel repository applicazioni che non compilassero e funzionassero con kaffe e le librerie presenti in Debian).

La collocazione dei pacchetti all'interno del repository (main, contrib, non-free) è legata, inoltre, alla licenza del compilatore/JVM, oltre che a quelle delle librerie utilizzate.

Java in Debian

Cacao

Cacao è un compilatore Just-in-Time, in grado di eseguire nativamente i metodi di Java. Cacao, inoltre, sfrutta le librerie "GNU classpath", ereditandone, di conseguenza, i pregi ed i difetti (tra cui la mancanza di una implementazione per le librerie swing, che non permette a Cacao di ottenere una certificazione ufficiale).

Free-java-sdk

Kaffe

Kaffe è un'altra implementazione del linguaggio Java. Il progetto è molto simile a Cacao. Per lo stesso motivo, anche Kaffe non può vantare una certificazione ufficiale Java.

  • Home Page: http://www.kaffe.org/
  • Pacchetti: kaffe, kaffe-common, kaffe-dev, kaffe-doc, kaffe-jthreads, kaffe-pthreads

Javacc

Gcj

Sun Java

Il Java ufficiale.


  • Home Page: http://java.sun.com/
  • Pacchetti Debian: sun-java5-bin, sun-java5-demo, sun-java5-doc, sun-java5-fonts, sun-java5-jdk, sun-java5-jre, sun-java5-plugin, sun-java5-source, sun-j2sdk1.5

Blackdown Java

Blackdown Java è un porting della piattaforma Java per Linux. Prima della creazione di make-jpkg, era una delle risorse fondamentali per gli utenti che volevano installare Java sul proprio computer.

Nota Bene: BlackDown Java non è nè FreeSoftware, nè OpenSource.

Pacchetti homemade

Prima del cambio di licenza di Sun, non erano presenti pacchetti ufficiali di Java-Sun.

Uno o due anni fa è stata inserita, in Debian, una comoda utility per permettere agli utenti di crearsi i propri pacchetti personalizzati, ed installarli correttamente all'interno della propria distribuzione, senza sporcare e, soprattutto, potendo gestire il tutto tramite le alternatives (e quindi avere più JVM installate).

Il pacchetto in questione è java-package. Sul wiki è presente una guida: Make-jpkg: Pacchettiziamo Java Sun

Alternatives

Bookmark