Questa è una domanda di licenza sulle librerie principali di Dalvik e J2SE. In particolare la licenza che governa java.util.concurrent.SynchronousQueue
.
L'intestazione della licenza della classe nel sorgente JDK afferma che è solo GPLv2 (vedi grepcode ). Tuttavia, lo stesso file nelle librerie core Dalvik sembra essere governato solo dalla licenza Apache 2 (vedi origine android ).
Come è possibile? Non pensavo che potessi prendere il codice sorgente GPLv2 e rileggerlo come Apache 2.
(È ovvio che lo abbiano fatto: un commento sopra il Documento Java dice anche "rimuovi link ai documenti del framework delle collezioni"!)
Chiedo perché ho un progetto GPLv3 e vorrei includere un lavoro derivato di alcune fonti dalle librerie principali (o Dalvik o J2SE) ma pubblicarlo sotto GPLv3. Pensavo di poterlo fare con Apache 2, ma non con GPLv2.
So che L'origine della classe J2SE è di per sé un lavoro derivato dalla fonte del dominio pubblico, ma le modifiche rispetto all'originale sono notevoli. (L'originale è disponibile all'indirizzo gee.cs.oswego. edu se sei interessato.) Pertanto android source è in realtà solo una copia di J2SE source , ma pubblicata sotto Apache 2 anziché GPLv2. Google è davvero autorizzato a farlo?