2010-07-12 7 views

Respuesta

2

Sí, tenía que hacerlo.

Pero no porque estés enviando el conector mysql con tu aplicación, sino porque te estás enlazando. (Si realmente lo hace)

Para explicaciones y soluciones, vea esta nota link text

8

Esto siempre ha sido motivo de controversia y mucha confusión. Esto no ha ayudado por la actitud de MySQL AB, que normalmente te aconseja comprar una licencia comercial lo que sea que estuvieras haciendo (eximiéndote de los requisitos de la GPL), en lugar de explicar su interpretación de qué circunstancias es donde la GPL permite usted para operar sin uno. (Bueno, es poco probable que deseen pasar mucho tiempo discutiendo sobre una venta, supongo.)

El punto crucial, como yo lo entiendo, es que mientras la GPL está bien definida y ampliamente comprendida en el escenario de 'vincular' en el modelo C tradicional (eg), lo es menos para lenguajes interpretados como Java, donde la comunicación y la elección entre componentes es un asunto fluido en tiempo de ejecución. ¿Podría uno argumentar que colocar un .jar en su carpeta de distribución es "mera agregación" en un medio, en oposición a un "trabajo colectivo", según los términos de la sección 2 de GPLv2?

hnnnnmm ... bueno, tal vez. ¿Te apetece hacer esa discusión en la corte? Dudoso.

Sin tener en cuenta la cuestión de interpretar la letra de la GPL (como I Am Not A Lawyer), el espíritu de la intención de la GPL podría resumirse con la pregunta: ¿Connector/J es una dependencia que está incluyendo en su paquete? ¿o es un componente separado que un usuario final puede elegir instalar y luego conectarse a su paquete?

Si no quiere licenciar su paquete como GPL, o pony para una licencia comercial para soportar MySQL, entonces asegúrese de que este sea realmente el caso: no incluya MySQL o el Connector con su paquete más estrictamente que simplemente tener instaladores separados en el mismo disco. No hagas un instalador que ejecute ambos.

Mejor: asegúrese de que su software puede operar con múltiples bases de datos diferentes, lo que permite al usuario elegir con qué van a utilizarlo. Esto es una buena cosa para hacer de todos modos; el código específico de la base de datos es una mierda Además, si desea proporcionar un instalador de un solo clic que incluya la base de datos y los configure juntos, siempre puede usar uno con una licencia que lo permita, como PostgreSQL o SQLite.

[Supongo que se trata de un paquete comercial en lugar de un programa de código abierto que simplemente desea poner a disposición con una licencia diferente de la GPL. En ese caso, consulte el archivo EXCEPTIONS-CONNECTOR-J para obtener licencias que también puede usar como FOSS exceptions.]

Cuestiones relacionadas