सबसे पहले, आई एम नॉट ए लॉयर। लेकिन मैंने कई लाइसेंसों का अध्ययन किया है और उनके विषय में मुद्दों को समझा है।
दूसरा, मुझे पता है कि यह एक पुराना सवाल है, लेकिन मुझे लगता है कि यह अभी भी भ्रम और चिंता का विषय है। यदि यह ISN'T चिंता का विषय है, तो यह होना चाहिए। एक लाइसेंस चुनना एक बड़ी बात है कि आप तुच्छ रूप से सड़क को बदल नहीं सकते हैं, खासकर अगर कई योगदानकर्ता शामिल हैं।
(एल) जीपीएल को दुर्भाग्य से, सी / सी ++ के साथ लिखा गया था। यह "सोर्स कोड", "ऑब्जेक्ट कोड", "डायनामिक लिंकिंग", "स्टेटिक लिंकिंग", "कंपाइलर्स" और "ऑब्जेक्ट कोड इंटरप्रेटर" की बात करता है। इसलिए इसे अन्य भाषाओं के लिए अनुवाद करना जो समान संकलन तकनीकों का पालन नहीं करते हैं (जैसे कि जावा का बायटेकोड, पायथन का सिर्फ समय संकलन या जावास्क्रिप्ट की व्याख्या की गई प्रकृति में) कुछ अनुमान और मान्यताओं की आवश्यकता होती है। जब आप कानून के बारे में बात कर रहे हैं - यानी अंतिम अदालती मामलों के बारे में सोच रहे हैं, जहां दो पक्ष बहस कर रहे हैं - स्पष्ट कटौती का अंतर नहीं होना एक बुरा विषय है।
कोड का एक मानक जीपीएल-लाइसेंस प्राप्त टुकड़ा इरादे में बहुत सीधा है। जो कोई भी उस कोड का उपयोग करता है, उससे यह उम्मीद की जाती है कि वह अपना कोड सभी उपयोगकर्ताओं को तब जारी करेगा जब वे इसे वितरित या बेचेंगे। यही जीपीएल वायरस है जिसे रिचर्ड स्टेलमैन बनाना चाहते थे और स्पष्ट और साफ तरीके से करते थे।
LGPL मूल रूप से एक "लाइब्रेरी" की अनुमति देने का एक प्रयास था जो वायरल नहीं होगा। लेकिन वे अभी भी चाहते थे कि अंत उपयोगकर्ता अपने दम पर पुस्तकालय को बदलने में सक्षम हो, इसलिए "स्थिर" और "गतिशील" लिंकिंग के बीच का अंतर - उपयोगकर्ता एक अलग गतिशील रूप से जुड़े पुस्तकालय में स्वैप कर सकता है, इसलिए इसकी आवश्यकता नहीं होगी जीपीएल के रूप में लाइसेंस प्राप्त किया जाए। और एक स्थिर लिंक के लिए उपयोगकर्ता को GPL होना आवश्यक है। लाइसेंस वास्तव में "हेडर फाइल" के बारे में बात करता है, जो C / C ++ में स्पष्ट हैं, लेकिन स्पष्ट रूप से स्पष्ट नहीं हैं कि आप जावा, पायथन, जावास्क्रिप्ट आदि दुनिया में कब हैं। तो एलजीपीएल सामान का एल ("पुस्तकालय") मैला है, सबसे अच्छा है।
इससे मामले का पटाक्षेप हो जाता है। कुछ भी अस्पष्ट कानूनों की दुनिया में बीएडी है। अगर मैं जीपीएल या एलजीपीएल घटक का उपयोग करके कुछ निर्माण कर रहा हूं, तो मैं निश्चित होना चाहता हूं कि भविष्य में मेरी कानूनी स्थिति क्या है अगर मैं अदालत में उतरूं। लेकिन आज के रूप में, मुझे यकीन नहीं है क्योंकि कानूनी मिसाल कायम करने वाले वास्तव में अच्छे कोर्ट केस नहीं हुए हैं, इस तरह के मंचों पर केवल बौद्धिक तर्क।
यहाँ वह जगह है जहाँ Classpath अपवाद अमूल्य है। यह स्पष्ट रूप से कहा गया है कि लाइसेंस के तहत कोड (एल) जीपीएल, लेकिन कुछ भी है का उपयोग करते हुए कि कोड का पालन कर सकते जो कुछ लाइसेंस वे चाहते हैं। कोई अगर, और या परंतु नहीं। यदि आप कोर कोड (जैसे बग्स को ठीक करना) बदलते हैं, तो आपको अभी भी उन परिवर्तनों को GPL के हिस्से के रूप में जारी करना होगा। लेकिन उपयोग आपको संक्रमित नहीं करता है।
व्यावसायिक दृष्टिकोण से, मैं समझता हूं कि कुछ 10 'पोल' के साथ GPL कोड को क्यों नहीं छूना चाहते हैं। कानूनी स्थिति स्पष्ट नहीं है और सड़क पर एक दशक तक व्यापार ठप हो सकता है जब कानूनी मिसाल कायम हो। या वे कानूनी मिसाल कायम करने की लड़ाई में सालों तक अदालत में फंसे रह सकते हैं। भले ही वे सिर्फ उस लड़ाई की लागत को जोखिम में डालना नहीं चाहते हैं। क्लासपैथ एक्सेप्शन क्लॉज को जोड़ने से कानूनी सवाल खत्म हो जाते हैं और किसी भी (गंभीर) संभावित कोर्ट केस से बचा जाता है।
तो, मेरे लिए, Classpath अपवाद LGPL से बहुत अलग है। यह GPL या LGPL स्रोत कोड या पुस्तकालयों के गैर-जीपीएल उपयोग की अनुमति देने वाली एक उज्ज्वल रेखा खींचने का एक कानूनी रूप से साफ तरीका है।