cddl osztály apache2 projektben

Fórumok

Sziasztok,
betehetek vajon egy darab, kissé átírt osztályt egy cddl projektből a saját, apache 2.0 licenszes java projektembe?
"Kissé átírt" alatt azért lényegi módosítást értek, nem csak a package sor átírását.
Üdv,
kl223

Hozzászólások

Szerintem be, mert mindkettő licensz megengedi, hogy más licenszű kóddal linkeljék.

Szerintem nem a jar linkel jart, hanem class linkel class-t. Az a legkisebb elkülönülő egység.

Az Apache licensz előírja (4. Redistribution.), hogy produkálj egy NOTICE fájlt azokról a kódokról, amik más licensszel vagy más forrásból származnak, de a buildelt produktummal (jar-ral, war-ral, zip-pel) együtt jönnek. Ezt gyakorlatban megnézheted több ASF-es javas projektben. Pl.: ebben a wicket jarban (ami maga Apache licenszes) van egy META-INF/NOTICE fájl és abban többek között ez is:

org.apache.wicket.util.concurrent is taken from [1], which states the following:
"All classes are released to the public domain and may be used for
any purpose whatsoever without permission or acknowledgment.
Portions of the CopyOnWriteArrayList and ConcurrentReaderHashMap
classes are adapted from Sun JDK source code. These are copyright
of Sun Microsystems, Inc, and are used with their kind permission,
as described in this license[2]."
[1]: http://g.oswego.edu/dl/classes/EDU/oswego/cs/dl/util/concurrent/intro.h…
[2]: licenses/sun-u.c.license.pdf

Szerintem megtaláltam a választ.

Idézet 1 2 egy CDDL-el kapcsolatos FAQ-ből:

We needed an open source license that allowed files released under the license to be linked with files released under other licenses. While a license like LGPL would allow this for dynamically-linked code, we also needed to be able to release software that statically links source files available under different licenses.

CDDL is file-based. That means files licensed under the CDDL can be combined with files licensed under other licenses, whether open source or proprietary.

Főleg a második idézet illik az én esetemre. Bár lehetne vitatkozni azon, hogy javaban mi a "statikus linkelés" megfelelője: az "azonos jar fájl" vagy a "CLASSPATH-ból betöltött különböző jar fájl".