Это всегда вызывает споры и путаницу. Это не помогло отношение MySQL AB, который обычно советовал бы вам покупать коммерческую лицензию независимо от того, что вы делали (освобождая вас от требований GPL), вместо того, чтобы объяснять, как они интерпретируют обстоятельства, когда GPL позволяет вам оперировать без такового. (Ну, они вряд ли захотят тратить много времени на споры из-за продажи, я полагаю.)
Важный момент, насколько я понимаю, заключается в том, что хотя GPL четко определен и широко понят в сценарии «связывания» в традиционной модели C ( например, ), он менее для интерпретируемых языков, таких как Java, где общение и выбор между компонентами являются текучим вопросом времени выполнения. Можно ли утверждать, что добавление .jar в папку дистрибутива - это «простая агрегация» на носителе, а не «коллективная работа», согласно условиям раздела 2 GPLv2?
hnnnnmm ... ну, может быть. Хотите представить этот аргумент в суде? Сомнительно.
Независимо от вопроса о толковании буквы GPL (поскольку я не юрист), дух намерения GPL можно было бы подытожить вопросом: является ли Connector / J зависимостью, которую вы включаете в свой пакет, или это отдельный компонент, который конечный пользователь может выбрать для установки и затем самостоятельно подключиться к вашему пакету?
Если вы не хотите лицензировать свой пакет как GPL или получить коммерческую лицензию для поддержки MySQL, то убедитесь, что последнее действительно так: больше не связывайте MySQL или Connector с вашим пакетом чем просто наличие отдельных установщиков на одном диске. Не создавайте установщик, который запускает оба.
Лучше: убедитесь, что ваше программное обеспечение может работать с несколькими различными базами данных базы данных, что позволяет пользователю выбирать, с чем он будет использовать его. Это хорошая вещь, чтобы сделать в любом случае; специфичный для базы данных код - отстой. Кроме того, если вы хотите установить установщик одним щелчком, который включает базу данных и настраивает их вместе, вы всегда можете использовать ее с лицензией, которая ее разрешает, такой как PostgreSQL или SQLite.
[Я предполагаю, что здесь вы говорите о коммерческом пакете, а не о программе с открытым исходным кодом, которую вы просто хотите сделать доступной по лицензии, отличной от GPL. В этом случае см. Файл EXCEPTIONS-CONNECTOR-J
для лицензий, которые вам также разрешено использовать в качестве исключений FOSS .]