Ticari web uygulamamda Apache Yazılım Lisansı, Sürüm 2.0 ve GNU LGPL 3 lisans eklentilerini kullanabilir miyim?


31

İki eklentim var. Biri GNU LGPL 3 lisansına, diğeri ise Apache Yazılım Lisansı Sürüm 2.0'a sahiptir. Onları ticari uygulamamda kullanabilir miyim? Ve eğer evet ise, hangi önlemleri almalıyım?


17
Bir avukattan gelmediği sürece, İnternette aldığınız yasal tavsiyeleri ASLA ASLA izlememelisiniz. Tercihen, bu alanda uzmanlaşmış biri, bu durumda: yazılım lisansları. Öyleyse, bir miktar tuzla elde ettiğiniz tüm yanıtları alın, çünkü aksi halde kendinizi davalara maruz bırakıyor olabilirsiniz (çünkü uygulamanız ticari bir sorundur).
Radu Murzea,

Yanıtlar:


34

Onları ticari uygulamamda kullanabilir miyim?

Ürettiğiniz yazılımla ne yapmak istediğinize bağlıdır.

İlk olarak, hiçbir ASL 1 , GPL veya LGPL, kuruluşunuzda ne yapmak için yazılım kullanabileceğinizi kısıtlamaz. Kısıtlamaların tümü, kuruluşunuzun dışında dağıtılan koddadır.

  • GPL için kısıtlama, GPL kodunu kendi yazılımınıza eklerseniz ve ardından yazılımınızı kuruluşunuzun dışına dağıttığınız takdirde, kaynak kodunu GPL veya uygun bir açık kaynak lisansı koşulları altında kullanıma sunmanız gerekir.

    Eğer uygulamanızda GPL kodunu kullanırsanız ve dağıtırsanız, başvurunuz açık kaynak olmalı ... yoksa lisansı ihlal ediyor olmalısınız.

  • LGPL için, kısıtlama (yukarıya bakın) yalnızca LGPL'ed kütüphanesinin kendisinin kaynak kodu için geçerlidir; yani, kütüphaneyi değiştirirseniz. Sadece kütüphaneyi kullanıyorsanız, kaynak kodunuzu hazırlamanız gerekmez.

    Ayrıca, uygulamanızdaki LGPL kodunun, kodunuzun kullanıcısı tarafından değiştirilebilmesi gerektiğine dair bir kısıtlama vardır. Bu, (aslında) kodunuzu yalnızca ikili dosyalar olarak dağıtırsanız, kodunuzu bu kitaplığa statik olarak bağlayamayacağınız anlamına gelir. Dinamik bağlantı kullanmanız gerekir.

  • ASL için tek önemli kısıtlama, kullandığınız ASL kodunu orijinal sürümünden bir şey değiştirdiyseniz söylemeniz gerektiğidir.

Son olarak, sadece netleştirmek için, ne GPL, LPGL, ne de ASL yazılımı kullanım amacınıza herhangi bir kısıtlama getirmez. Ve amacınız para kazanmak olup olmadığını da içerir. Onlar sadece sınırlamak yol sen para kazanabilirsiniz ... ve LGPL ve ASL durumunda, kısıt oldukça az.

Ve eğer evet ise, hangi önlemleri almalıyım?

LGPL ve ASL için hiçbir önlem alınması gerekmez.

IANAL - Ben avukat değilim. Emin olmanız gerekiyorsa, gerçek ve nitelikli bir uzmana sorun; yani, yazılım IP kanunu konusunda uzmanlaşmış bir avukat.


1 - Bu cevabın amaçları doğrultusunda, ASL == Apache Yazılım Lisansı versiyon 2.


Bu bir web uygulaması için geçerli mi? Müşterinin yalnızca .class ve .JAR dosyalarını içeren savaş dosyasını alacağı anlamına gelir. Hepsi LGPL hala tamam mı?
Java Ana

LGPL kitaplıklarını değiştirmiyorsanız, onları WAR dosyasına uygulama kodunuzla birlikte ekleyebilirsiniz. Ancak, kodunuzu dağıttığınız kişinin LBPL kodunu başka bir sürümle değiştirebilecek şekilde yapmanız gerekir. Bir "uber-JAR" muhtemelen bir ihlaldir. LGPL kitaplıklarını kodunuzla birlikte gizlemek kesinlikle bir ihlaldir. (IANAL)
Stephen C

Tüm jar dosyalarını yerleştirdiğimde lib isimli bir klasör var. Böylece herhangi bir Jar dosyasını diğer sürümüyle yeniden çalıştırabilir. Ama her zaman işe yarayacağını garanti etmiyorum. Bu hala iyi mi?
Java Ana

Avukatınıza sorun. :-)
Stephen C

Tomcat üzerinde çalışan normal bir web uygulaması. Yardım edebilirsen iyi olacak. Her neyse, açıklamalarınız için gerçekten yardım ettiğiniz için teşekkür ederim.
Java Ana

5

Apache Lisansı, Apache lisansı altında dağıtılan bir eklentiye veya kütüphaneye bağlanan yazılıma herhangi bir kısıtlama getirmez. Öte yandan LGPL, LGPL kütüphanesinin dinamik olarak bağlanması (ve bir kullanıcı tarafından değiştirilebilmesi) veya tüm çalışmanın GPL uyumlu bir açık kaynaklı lisans altında yayınlanması gerekliliğine sahiptir.

Kapalı kaynak kodlu bir uygulamada kullanım için bu, Apache Lisanslı eklentisini kısıtlama olmadan kullanabileceğiniz ve LGPL lisanslı eklentinin dinamik olarak bağlanması gerektiği anlamına gelir.

Uygulamanızla birlikte eklentilerden birini dağıtırsanız, eklentilerin kaynaklarını da sağlamanız veya kullanıcılarınızı bu kaynakları nereden alabilecekleri konusunda bilgilendirmeniz gerekir.


BartvanIngenSchenau "kapalı kaynak" uygulaması ile ne demek istiyorsun? Paketlenmiş çözüm mü demek istiyorsunuz (kaynak kodunu dağıtmamak) ya da bir kuruluş içindeki dağıtımına mı yoksa ticari dağıtım gibi bir şeye mi bakıyorsunuz?
Rachael

1
@Rachael: "Kapalı kaynak" genellikle kaynak kodun dağıtılmadığı yazılıma atıfta bulunmak için kullanılır. Bir kuruluş içindeki dağıtım, bir telif hakkı lisansı söz konusu olduğunda, biraz özel bir durumdur, çünkü bir yazılım ürününün kopyalarını bir kuruluş içindeki insanlara sağlamak, çoğu telif hakkı yasalarının dağıtımı olarak kabul edilmez (kopyalama olarak kabul edilir).
Bart van Ingen Schenau

-4

Her şeyden önce, bu yasal bir tavsiye değil.

GPL yazılımının (ağ üzerinden de dahil) bağlanmasına, derlenmemesine veya GPL olmayan herhangi bir formla gönderilmesine izin verilmez. LGPL, ticari ürünler de dahil olmak üzere GPL dışı üçüncü taraf desteğine izin vermek için biraz gevşetir. Buradaki önemli kısım, küçük bir halka deliği yaratan üçüncü taraf (tabiri caizse) olması gerektiğidir.

Kısacası, mevcut bir LGPL kitaplığına bağlanırsınız (buna birinci taraf diyorsunuz), ancak bu bağlantıyı yapan yazılım LGPL olmalıdır. Bu yazılımı ikinci taraf olarak adlandırın. İkinci taraf yazılımı LGPL olarak piyasaya sürülmek zorunda olsa da, ikinci taraf yazılımı sahibi olarak diğer yazılımların LGPL dışında kullanmasına izin verebilirsiniz (ikinci taraf yazılımı LGPL altında da mevcut olduğu sürece). Başka bir deyişle, ikinci taraf yazılımı LGPL olarak sunulmalıdır, ancak gerekli değildirtüm durumlarda LGPL olarak lisanslamak için. Bir yazılımı kullanan her kullanıcı, söz konusu yazılımı yasa ile kullanma lisansına sahip olmalıdır. Söylediğim şudur ki, her kullanıcı LGPL olarak yazılıma erişebildiği sürece, virüslü olmayan terimler kullanarak da lisanslayabilirsiniz. Üçüncü taraf yazılımı da, LGPL olmayan şartlar altında üçüncü taraf yazılımı tarafından kullanılmak üzere ikinci taraf yazılımını kendinize lisanslamak için oluşturabilirsiniz. İnsanların kendi yazılımlarını kullanmak için kendilerine bir sözleşme ve lisans yazdıklarını bile duydum . Yasa garip olabilir! Üçüncü taraf yazılımı, hiçbir durumda LGPL olmak zorunda değildir.

Yani, yaptığınız şey sadece bir sarıcı olarak LGPL lib'e bağlanacak ve bir sarıcıyı LGPL olarak bırakacak bir kütüphane oluşturmaktır. Daha sonra bu sarmalayıcı (bağlanabilirsiniz senin sürece sarıcı LGPL olarak geniş bir yelpaze olduğunu gibi olmayan LGPL yazılımında sarıcı).

Apache Yazılım Lisansı için konuşamam, çünkü onunla ailen değilim.


Çok genel olarak "link" terimini kullandığımı unutmayın çünkü bu sadece derlenmiş diller için geçerli değildir ve LGPL yazılımını (dahil olmak üzere yerel veya bir ağ konumundan PHP veya Javascript gibi) veya "dahil" de içerebilir. Java RMI vb. gibi bir ağ üzerinden bir yazılıma "bağlanma"
JSON

1
"GPL yazılımının bağlanmasına (ağ üzerinden de dahil) bağlanmasına, derlenmemesine veya GPL olmayan herhangi bir biçimde gönderilmesine izin verilmiyor." . "Veya" "ve" olmalıdır. GPL'ed yazılımını, "göndermemeniz" koşuluyla, GPL'ed olmayan yazılımı kullanabilirsiniz.
Stephen C

2
Bu cevap birçok düzeyde yanlıştır. Soru GPL ile ilgili değil, LGPL ile ilgili. ASL kodu hemen hemen başka herhangi bir lisans altında koda entegre edilebilir, bu LGPL veya hatta GPL anlamına gelir (bunun tersi yasak olsa bile). Kapalı kaynaklı yazılımda bile kullanabilirsiniz. Ve Stephen C.'nin işaret ettiği gibi, yayınlamadığınız ya da kamuya açık hale getirmediğiniz sürece ne istersen yapabilirsin.
Alexis Dufrenoy
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.