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.