我应该使用哪个MySQL连接器:MySQL-connector-java-5.1.46.jar还是MySQL-connector-java-5.1.46-bin.jar有什么区别?

我应该使用哪个MySQL连接器:MySQL-connector-java-5.1.46.jar还是MySQL-connector-java-5.1.46-bin.jar有什么区别?,java,mysql,jdbc,mysql-connector,Java,Mysql,Jdbc,Mysql Connector,我正准备第一次使用jdbc,并且正在为MySQL安装jdbc驱动程序 但是,我不清楚这些文件中的哪些要移动到Eclipse中的WEB\u INF/lib文件夹。它们似乎都包含相同的内容,并一起包含在下载的MySQL连接器zip文件中 我到处都搜索过,但找不到任何文档来解释使用哪一个文件。我以为你是在开玩笑,但我只是从下载了zip,实际上,它包含了这两个文件 mysql-connector-java-5.1.46.jar和mysql-connector-java-5.1.46-bin.jar是二进

我正准备第一次使用jdbc,并且正在为MySQL安装jdbc驱动程序

但是,我不清楚这些文件中的哪些要移动到Eclipse中的WEB\u INF/lib文件夹。它们似乎都包含相同的内容,并一起包含在下载的MySQL连接器zip文件中


我到处都搜索过,但找不到任何文档来解释使用哪一个文件。

我以为你是在开玩笑,但我只是从下载了zip,实际上,它包含了这两个文件

mysql-connector-java-5.1.46.jar
mysql-connector-java-5.1.46-bin.jar
是二进制相同的,除了
META-INF/INDEX.LIST
(其中包含实际的jar文件名)。我已经解压了它们,并使用kdiff3对它们进行了比较

简言之:你可以使用任何一个:你喜欢什么就用什么

此更改在
更改中提到,具体如下:

-修复Bug#27231383,提供不带“-BIN”的MAVEN友好商业软件包

有趣的是,MySQL bug tracker中没有bug 27231383(对于列出的“正常”bug来说,这个数字太高了),所以可能是来自Oracle内部的另一个系统

此外,报告提到:

Oracle提供的Connector/J 5.1捆绑包现在包含 名称为
mysql-connector-java-5.1.ver.jar的附加jar包
(
mysql-connector-java-commercial-5.1.ver.jar
for commercial 捆绑)。它与原始的另一个jar包相同 名为
mysql-connector-java-5.1.ver-bin.jar的包
mysql-connector-java-commercial-5.1.ver-bin.jar
for commercial bundles),除了它更为Maven友好的文件名。(错误#27231383)

据推测,由于与Maven命名约定更接近,这使得在本地/公司Maven存储库中安装库变得更容易(例如,如果您不想或法律上不能,请使用Maven Central)


但重复一次:它们都是一样的,你可以使用任何一种。

我可以向你保证一件事:你只要试一下,你的电脑就不会融化。这似乎是一个简单的打包错误,任何一个文件都应该有效。@Gimby这不是打包错误,而是有意更改,请参见我的答案。@Gimby当然,我会从名称中删除
-bin
。但我认为Oracle希望保留这一点以实现向后兼容性。@MarkRotteveel friend,我已经对您投了赞成票:)我对这一决定的任何保留都被撤销了,因为它在发行说明中得到了非常公开和清楚的解释。您对这一问题的调查程度给我留下了深刻的印象。谢谢你的回答。这很有帮助。