Paquete de software que contiene bibliotecas LGPL como Java Fat-Jar Archive

8

En el trabajo, estamos implementando un paquete de software de una aplicación Java (escrita por nosotros) que tiene muchas dependencias externas, la mayoría de las cuales son bibliotecas de terceros con licencia LGPL y BSD que se distribuyen como archivos JAR.

Actualmente, estamos implementando un cliente de prueba del software que se distribuye como un único archivo java fat jar, creado por el complemento de ensamblaje Maven, que hace aproximadamente lo siguiente:

  • extraer todas las dependencias
  • volver a agruparlos como un único archivo jar

Todos los archivos de clase se extraen y luego se agrupan en un solo archivo JAR con nuestra propia aplicación. Me di cuenta de que también algunos archivos se sobrescriben, en su mayoría archivos LICENSE.txt, debido a que tienen el mismo nombre.

Me pregunto si esto es correcto y cumple con la licencia LGPL. ¿Cuál sería una mejor manera de distribuir el software? ¿Cómo se organizaría mejor este paquete en particular?

No incorporamos ningún código fuente directamente en nuestros archivos fuente, ni tocamos los archivos binarios. El código fuente de las bibliotecas acompaña a todo el producto. (Es un software que se usa internamente, no se implementa en clientes ni nada, pero supongo que eso no importa).

PD: Hice la misma pregunta sobre Stack Overflow, y me sugirieron que la hiciera aquí.

scravy
fuente

Respuestas:

2

Como está utilizando Maven, le recomiendo cambiar al complemento de sombra para construir su JAR. Se puede configurar para manejar automáticamente varios archivos de licencia "estándar" (consulte la sección sobre transformadores de recursos) y le avisará si sus dependencias tienen clases superpuestas.

kdgregory
fuente
1

Este es realmente un asunto difícil que debe discutirse con un abogado. De todos modos, sobrescribir los archivos LICENSE.txt (que elimina efectivamente todos menos uno) definitivamente no se puede. Renombrándolos a Foo-LICENSE.txt, Bar-License.txt es el primer paso que debe hacer de inmediato. Con respecto a la LGPL, ofrecer instrucciones sobre cómo reemplazar la biblioteca dentro del fatjar podría ser suficiente para cumplir con la sección 4e de la LGPL (consulte a su abogado). Si pedirle al abogado no es factible, pedirle permiso directamente a los autores para que lo haga así podría ser una alternativa.

usuario281377
fuente