2010년 오라클이 선을 인수·합병하였고, 오라클은 선언 구문에 해당하는 7000줄을 그대로 사용한 것, 패키지의 구조, 순서 및 조직을 그대로 이용한 것이 저작원 침해라며 구글을 상대로 소송을 제기하였다. 자연 다큐멘터리를 보았다. 기린 두 마리가 싸우는 장면이 나왔다. 온순해 보이는 기린이지만 자기 이해관계가 걸린 문제에서는 자신의 모든 것을 걸고 싸운다. 사람도 그렇다. 개인은 물론이고, 기업들 사이에서도 때론 치열하게 맞붙는다. 역설적이지만 이러한 다툼을 통해 불명확했던 것들에 대한 기준이 생기기도 한다. API 패키지를 유료 또는 무료로 제공 구글과 오라클, IT 업계에서의 거대 공룡이다. 공룡 두 마리가 10년 가까이 치열하게 싸웠다. 무대는 법원이었다. 그 이유는 무엇일까? '자바'라는 컴퓨터 프로그래밍 언어가 있다. 1996년 미국의 선 마이크로시스템즈(Sun Microsystems, Inc.)가 개발했다. 자바의 모토는 'write once, run anywhere(한 번 코드를 작성하면 어떤 곳에서도 작동된다)'였다. 기존 컴퓨터 프로그램은 플랫폼에 따라 컴파일 방식이 달라지기 때문에 각 환경에 맞게 프로그래밍을 해야 했지만, 자바는 위 모토대로 하드웨어 조건 등에 구애 받지 않고 한 번 프로그램을 만들면 다양한 기기에서 응용 프로그램이 호환 작동할 수 있었다. 덕분에 자바는 매우 인기있는 프로그래밍 언어와 개발 플랫폼이 됐다. '선'은 자바를 이용하는 프로그래머들이 모든 기능을 처음부터 개발할 필요가 없도록 특정한 기능에 대하여는 API(Application Programming Interface)라는 선이 미리 만들어 제공하는 프로그램을 이용할 수 있도록 하였다. '패키지(package)-클래스(class)-메소드(method)'로 구성된 API가 있으면 프로그램 개발자는 한결 편하게 자신이 생각한 기능을 만들 수 있다. 프로그램을 짜기 위해 이러한 API를 활용하는 과정을 도서관에서 원하는 정보를 찾는 것에 비유하자면 API는 도서관에 해당하고, 각 패키지는 도서관의 책장, 클래스는 책장에 꽂혀 있는 책, 메소드는 구체적 내용이 담겨 있는 '장(how-to-chapter in a book)'에 해당하므로, 자기가 필요한 기능이 있을 때 이러한 과정을 거쳐 보다 쉽게 프로그램을 만들 수 있는 것이다. 예를 들어 2개의 수를 비교해 더 큰 수가 무엇인지를 찾아내는 것을 프로그래머가 직접 만들 필요 없이 'java.lang.Math.max'라는 API를 사용하면 되는 것이다. 처음 선이 자바를 내놓았을 때는 8개의 패키지로 API가 구성되어 있었으나, 2008년에는 패키지가 166개로 늘었다. 선은 자바 API 패키지를 세 가지 라이선스로 구분하여 유료 또는 무료로 제공하여 왔다. 첫 번째는 GPL이었다. GPL은 오픈소스 라이선스인데, GPL로 배포된 소프트웨어를 자신이 자체 개발한 소스코드와 결합하여 사용할 경우 자신이 자체 개발한 소스코드도 모두 공개한다는 조건으로 무료로 이용하는 것이다. 다음으로 'specification license'라는 것이었다. 자바 API 패키지의 선언 코드와 구조를 이용할 수 있지만 특정 기능에 대한 구현 코드(implementing code)는 직접 작성해야 하는 라이선스이다.
1996년 미국의 선 마이크로시스템즈(Sun Microsystems, Inc.)가 '자바'라는 컴퓨터 프로그래밍 언어를 개발하였고, 특정한 기능에 대하여는 API(Application Programming Interface)라는 선이 미리 만들어 제공하는 프로그램의 유료와 무료로 제공하는 것을 두고 구글과 오라클의 소송 싸움이 지속되고 있다.