Czy muszę podać kod źródłowy mojego projektu, jeśli korzystam z biblioteki na licencji Apache 2.0?

16

Mam prywatną (tj. Nie ma szansy udostępnienia źródła) i aplikację komercyjną, teraz chciałbym skorzystać z biblioteki objętej licencją Apache 2.0 .

Przeczytałem sekcję Licencja Apache i FAQ, ale nie jestem tego pewien.

Czy to samo co GPL3, które zmusza aplikację do dostarczenia kodu źródłowego?

senshin
źródło
4
Pamiętaj, że Android, z wyjątkiem jądra, jest objęty licencją Apache 2.0 i większość dostawców nie zapewnia źródeł dostosowań.
Jan Hudec
3
Sprawdź, które licencje wymagają dołączenia kodu źródłowego, patrząc na kolumnę „Uwzględnij źródło” w tej tabeli w Wikipedii.
Basil Bourque,

Odpowiedzi:

20

Licencja Apache 2.0 różni się bardzo od licencji GPL, w co najmniej dwóch aspektach:

  1. W ramach licencji Apache 2.0 możesz rozpowszechniać pliki binarne bez podawania kodu źródłowego. (Zgodnie z GPL zawsze musisz podać kod źródłowy)
  2. Licencja GPL przenosi się na całą aplikację. Licencja Apache 2.0 nie dotyczy i ma zastosowanie tylko do tych części, które wyraźnie stwierdzają, że są objęte licencją Apache 2.0.
    Oznacza to, że jeśli korzystasz z biblioteki z licencją Apache 2.0 w swoim projekcie, uprawnienia / prawa / obowiązki wynikające z licencji Apache 2.0 nie przenoszą się nagle na twój kod.

Aby rozpowszechniać (binarnie lub niezmodyfikowaną) kopię biblioteki licencjonowanej Apache 2.0 wraz z aplikacją, musisz spełnić dwa wymagania:

  • Użytkownicy aplikacji muszą otrzymać kopię licencji Apache 2.0. Aby uniknąć nieporozumień, należy również określić, do których części dystrybucji odnosi się licencja.
  • Użytkownicy aplikacji muszą otrzymać kopię pliku UWAGI dostarczonego z biblioteką, jeśli taki plik istnieje.
Bart van Ingen Schenau
źródło
5

Licencja Apache 2.0 jest całkowicie odmienna od GPL. W szczególności mówi

Użytkownik może reprodukować i rozpowszechniać kopie Dzieła lub Dzieł pochodnych na dowolnym nośniku, z modyfikacjami lub bez, oraz w formie Źródła lub Przedmiotu, pod warunkiem spełnienia następujących warunków:

Więc jeśli spełniasz wymienione warunki (które zwykle nie są uciążliwe), nie musisz redystrybuować kodu źródłowego.

Simon B.
źródło