2024.10.22
안녕하세요,
현재 안드로이드 앱을 개발 중이며,
build.gradle
파일을 통해 LGPL 3.0 및 LGPL 2.1 라이브러리를 메이븐 의존성으로 추가하여 사용하고 있습니다. 이 중
LGPL 3.0 라이브러리에서 LGPL 2.1 라이브러리
를 사용하는 구조입니다. 라이브러리의 수정이나 오버라이딩 없이 클래스에서
import
만 하여 사용하고 있는 상황입니다.
이와 관련하여, 안드로이드 앱을
플레이스토어에 배포
할 때 아래 사항에 대한 의문이 있습니다:
1. 이 방식이
동적 링킹
에 해당하는지, 아니면
정적 링킹
에 해당하는지.
2. 전체 또는 일부 소스 코드를
공개할 의무
가 있는지.
https://www.gnu.org/licenses/lgpl-java.html
제가 참고한 GNU 사이트의
"LGPL and Java"
문서에 따르면,
Java에서
import
하여 사용하는 라이브러리
는 일반적으로
파생 저작물
로 간주되지 않는 것으로 보입니다. 또한, 문서의 마지막 부분에서는
상속을 사용하는 경우에도
특별한 규정이 없다고 설명하고 있습니다. 그러나 상속을 통해 사용하는 클래스가 라이브러리의 일부로 간주되어 소스 공개 의무가 발생할 가능성이 있는지에 대해 추가적인 명확한 설명이 필요합니다.
답변해주시면 감사하겠습니다.
------ 댓글 -------
License 관리자
안녕하세요,
오픈소스SW 라이선스 관리자입니다.
문의주신 내용 답변드립니다.
1. 디펜던시는 동적 링킹에 해당한다고 볼 수 있습니다.
2. LGPL 라이선스도 동적 링킹 시에도 해당 라이브러리에 대한 소스코드 공개를 해야 하지만 수정 사용이 없기 때문에 다운로드 받은 URL을 제공함으로써 소스코드 공개의무를 이행할 수 있습니다.
그리고, LGPL 라이선스는 동적 링킹 시 라이선스 적용 범위가 라이브러리에 해당하기 때문에 해당 라이브러리를 제외한 다른 부분에 대한 소스코드 공개의무가 없습니다.
감사합니다.
※ 법적 분쟁 발생시 본 답변은 법률적 해석이나 논리로 활용될 수 없습니다.
------ 댓글 -------
답변 감사합니다.
https://www.gnu.org/licenses/lgpl-java.html
제가 참고한 GNU 사이트의
"LGPL and Java"
문서의 아래 내용
"The only difference between Java and C from the LGPL's perspective is that Java is an object-oriented language, supporting inheritance. The LGPL contains no special provisions for inheritance, because none are needed. Inheritance creates derivative works in the same way as traditional linking, and the LGPL permits this type of derivative work in the same way as it permits ordinary function calls."
상속에 대한 해석은 어떻게 될까요?
라이브러리의 클래스를 상속해서 사용했을때 소스코드 공개 의무는 어떻게 될까요?
댓글 0
댓글 작성
댓글을 작성하려면 게시글 작성 시 입력한 이메일과 패스워드를 입력해주세요.