Pacchetto software contenente librerie LGPL come Java Fat-Jar Archive

8

Al lavoro, stiamo implementando un pacchetto software di un'applicazione Java (scritta da noi) che ha molte dipendenze esterne, la maggior parte delle quali sono librerie di terze parti con licenza LGPL e BSD distribuite come archivi JAR.

Attualmente stiamo implementando un client di prova del software che è distribuito come un unico archivio java fat jar, creato dal plug-in di assembly Maven, che ha approssimativamente il seguente:

  • estrai tutte le dipendenze
  • riuniscili come un unico archivio jar

Tutti i file di classe vengono estratti e quindi raggruppati in un unico file JAR con la nostra applicazione. Mi sono reso conto che anche alcuni file vengono sovrascritti, in gran parte file LICENSE.txt, a causa dello stesso nome.

Mi chiedo se questo è corretto e conforme alla licenza LGPL. Quale sarebbe un modo migliore per distribuire il software? Come sarebbe meglio organizzare questo particolare pacchetto?

Non abbiamo incorporato alcun codice sorgente direttamente nei nostri file sorgente, né abbiamo toccato i file binari. Il codice sorgente delle librerie accompagna l'intero prodotto. (È un software che viene utilizzato internamente, non distribuito ai clienti o altro, ma suppongo che non abbia importanza.)

PS: ho fatto la stessa domanda su Stack Overflow, e mi è stato suggerito di chiederlo qui.

    
posta scravy 13.03.2012 - 14:26
fonte

2 risposte

2

Dato che utilizzi Maven, ti consiglio di passare al plug-in per lo schermo per creare il tuo JAR . Può essere configurato per gestire automaticamente più file di licenza "standard" (vedere la sezione sui trasformatori di risorse) e ti avviserà se le tue dipendenze hanno classi sovrapposte.

    
risposta data 13.03.2012 - 18:15
fonte
1

Questa è davvero una questione difficile che dovrebbe essere discussa con un avvocato. In ogni caso, sovrascrivere i file LICENSE.txt (che elimina in modo efficace tutti tranne uno di essi) è decisamente un no-go. Rinominandoli a Foo-LICENSE.txt, Bar-License.txt è il primo passo da fare immediatamente. Per quanto riguarda la LGPL, offrire istruzioni su come sostituire la lib con il fatjar potrebbe essere sufficiente per conformarsi alla sezione 4e della LGPL (chiedi al tuo avvocato). Se chiedere l'avvocato non è fattibile, chiedere direttamente agli autori il permesso di farlo in quel modo potrebbe essere un'alternativa.

    
risposta data 13.03.2012 - 14:45
fonte

Leggi altre domande sui tag