Pertama, Saya Bukan Pengacara. Tetapi saya telah mempelajari banyak lisensi dan memahami masalah-masalah yang terkait dengannya.
Kedua, saya tahu ini adalah pertanyaan lama, tetapi saya pikir ini masih merupakan titik kebingungan dan kekhawatiran. Jika itu bukan masalah, seharusnya. Memilih lisensi adalah masalah besar yang tidak bisa Anda ubah sepele, terutama jika banyak kontributor terlibat.
(L) GPL ditulis dengan C / C ++, sayangnya. Ini berbicara tentang "Kode Sumber", "Kode Objek", "Penghubung Dinamis", "Penghubung Statis", "Penyusun" dan "Penerjemah Kode Obyek". Jadi menerjemahkan ini untuk bahasa lain yang tidak mengikuti teknik kompilasi yang sama (seperti bytecode Java, kompilasi tepat waktu Python atau sifat yang ditafsirkan Javascript) memerlukan beberapa dugaan dan asumsi. Ketika Anda berbicara tentang hukum - yaitu berpikir tentang kasus-kasus pengadilan akhirnya di mana dua pihak berdebat - tidak memiliki perbedaan yang jelas adalah HAL YANG BURUK.
Sepotong kode standar berlisensi GPL cukup mudah. Siapa pun yang menggunakan kode itu diharapkan melepaskan kode mereka ke semua pengguna saat mereka mendistribusikan atau menjualnya. Itulah virus GPL yang ingin diciptakan dan dilakukan oleh Richard Stallman dengan jelas dan bersih.
LGPL pada awalnya merupakan upaya untuk memungkinkan "perpustakaan" yang tidak akan viral. Tetapi mereka masih menginginkan pengguna akhir untuk dapat mengganti perpustakaan sendiri, maka perbedaan antara menghubungkan "statis" dan "dinamis" - pengguna dapat bertukar ke perpustakaan berbeda yang terhubung secara dinamis, sehingga tidak perlu dilisensikan sebagai GPL. Dan tautan statis mengharuskan pengguna menjadi GPL. Lisensi sebenarnya berbicara tentang "file header", yang jelas dalam C / C ++ tetapi jelas tidak jelas ketika Anda berada di dunia Java, Python, Javascript, dll. Jadi L ("library") dari barang-barang LGPL berlumpur, paling-paling.
Ini sampai pada inti masalah. Apa pun yang tidak jelas adalah BURUK dalam dunia hukum. Jika saya melihat membangun sesuatu menggunakan komponen GPL atau LGPL, saya ingin memastikan apa kedudukan hukum saya di masa depan jika saya mendarat di pengadilan. Tetapi sampai hari ini, saya tidak yakin karena benar-benar belum ada kasus pengadilan yang baik yang membentuk preseden hukum, hanya argumen intelektual di forum seperti ini.
Di sinilah Pengecualian Classpath sangat berharga. Ini dengan jelas menyatakan bahwa kode di bawah lisensi adalah (L) GPL, tetapi apa pun yang menggunakan kode itu dapat mengikuti lisensi apa pun yang mereka inginkan. Tidak ada ifs, ands, atau buts. Jika Anda mengubah kode inti (mis. Memperbaiki bug), Anda masih harus melepaskan perubahan itu sebagai bagian dari GPL. Tetapi menggunakan TIDAK menginfeksi Anda.
Dari perspektif bisnis, saya mengerti mengapa beberapa tidak mau menyentuh kode GPL dengan kutub 10 '. Kedudukan hukum tidak jelas dan bisnis mungkin tersengat satu dekade ke depan ketika preseden hukum akhirnya ditetapkan. Atau mereka mungkin terjebak di pengadilan selama bertahun-tahun berjuang untuk menetapkan preseden hukum. Bagaimanapun mereka tidak mau mengambil risiko biaya pertempuran itu. Menambahkan klausa Pengecualian Classpath menghilangkan pertanyaan hukum dan menghindari kasus pengadilan (serius) potensial.
Jadi, bagi saya, Pengecualian Classpath jauh berbeda dari LGPL. Ini adalah cara yang bersih secara hukum untuk menarik garis terang yang memungkinkan penggunaan kode sumber atau pustaka GPL atau LGPL non-GPL.