Hello,
j'ai un soft java qui utilise JDBC et qui fonctionne sur n'importe quelle base respectant ce standard. Ce soft n'est pas GPL ou LGPL.
Mon soft est configurable et il suffit d'ajouter le jar des drivers mysql gpl au classpath pour utiliser une base de données mysql.
Mon raisonnement est le suivant :
- la position de la FSF (1) est que lier dynamiquement avec une bibliotheque est un travail dérivé : "It has always been the FSF's position that dynamically linking applications to libraries creates a single work derived from both the library code and the application code."
- dans le cas de java, la position de la FSF (toujours 1) est aussi "Applications use Java's "import" functionality to access classes from these libraries. When the application is compiled, function signatures are checked against the library, creating a link. The application is a then generally a derivative work of the library. "
-mon soft n'importe pas les "symboles" mysql ( pas de "import" java ) Il compile sans. Il fonctionne sans. Ce n'est pas un travail dérivé des drivers mysql.
Questions :
- le fait qu'il puisse fonctionner avec les drivers mysql créé t il pour autant un "lien dynamique" ?
Et donc si qqn fait fonctionner mon soft avec les drivers mysql gpl, quel est le status de mon code ?
1- http://www.gnu.org/licenses/lgpl-java.html
# wikipedia
Posté par snt . Évalué à 2.
"If the original software was designed to accept plug-ins or drivers using a defined mechanism, such a driver or plug-in does not form a derived work."
L'interface JDBC a été conçue pour accepter des drivers. Les drivers JDBC qui en decoulent ne sont pas donc pas des travaux derivés. Et donc les applications java utilisant JDBC sont des travaux derivés de JDBC, pas des drivers en question ( tant qu'on ne les utilise pas explicitement ).
# Tu fais ce que tu veux
Posté par DPhil (site web personnel) . Évalué à 2.
C'est mon interprétation de la faq:
http://www.gnu.org/licenses/gpl-faq.html#TOCGPLInProprietary(...)
http://www.gnu.org/licenses/gpl-faq.html#TOCGPLIncompatibleA(...)
# liaison est une vue de l'esprit
Posté par Nicolas Boulay (site web personnel) . Évalué à 4.
Si tu as absolument besoin de MySQL pour fonctionner quelques soit la manière de le faire, ton code doit être GPL.
Si tu as une interface générique, qui peut fonctionner avec plusieurs SGBD, le problème ne se pose pas.
C'est cette différence qui fait vendre des licences MySQL.
"La première sécurité est la liberté"
[^] # Re: liaison est une vue de l'esprit
Posté par snt . Évalué à 2.
Merci pour vos avis et vos pointeurs.
[^] # Re: liaison est une vue de l'esprit
Posté par Damien Metzler . Évalué à 1.
Genre, si tu utilise du autoincrement ou autre spécificité de MySQL dans tes requêtes SQL... alors ton soft ne peux plus se passer de MySQL et donc doit être GPL...
Tiens au fait personne ne t'as demandé pourquoi tu ne voulais pas utiliser la GPL ? Sinon, tu n'a qu'à acheter une licence proprio de MySQL, comme ça tu fais ce que tu veux avec ton soft.
[^] # Re: liaison est une vue de l'esprit
Posté par snt . Évalué à 3.
>MySQL.
Je developpe principalement pour Oracle et SQL Server. J'ai une culture multibase ( oracle, microsoft, sybase, mysql etc ) : j'ai appris à utiliser le plus petit sous-ensemble de SQL commun aux SGBDs que j'ai rencontré. C'est pas toujours facile, mais je fais comme ça depuis quelques années et ça me convient pas mal ( ODBC avant et JDBC depuis quelques temps ). Donc mon code JDBC n'a effectivement pas besoin de MySQL pour fonctionner.
La decision de la licence du soft en question ne depend pas de moi.
Je voulais jeter un coup d'oeil sur les prix du driver mysql proprio pour ma culture perso, mais je les trouve pas sur leur site. Pour mes besoins, les versions gratuites d'oracle xe et de sql server express conviennent. Donc si je suis compatible mysql en plus tant mieux. Sinon tant pis. D'ailleurs je vais jeter un coup d'oeil à postgresql.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.