运行MXJ for MySQL的MissingResourceException

问题描述 投票:2回答:3

[我正在使用this教程中的代码,用于使用MXJ将MySQL“嵌入”我的Java应用程序中。但是,在运行代码时出现此异常:

Exception in thread "main" java.util.MissingResourceException: Resource '5-5-9/Windows_7-amd64/mysqld.exe' not found

在本教程中到达此行时会发生这种情况:

mysqldResource.start("test-mysqld-thread", database_options);

我正在Eclipse中运行,并且在我的构建路径中添加了以下四个jar,因为this链接说我需要它们:

mysql-connector-java-5.1.18-bin.jar
mysql-connector-mxj-gpl-5-0-12-db-files.jar
mysql-connector-mxj-gpl-5-0-12.jar
aspectjrt-1.6.9.jar

我不确定我在这里缺少什么。有提示吗?

java mysql database jdbc
3个回答
6
投票

MXJ尚未准备好与Windows 7 64位一起使用。使用this错误凭单,我找到了需要做的事情。

一旦下载文件并从zip中提取文件,解压缩mysql-connector-mxj-gpl-5-0-12-db-files.jar并在里面的platform-map.properties文件中添加一行:

Windows_7-amd64=Win-x86

保存,然后重新保存。就像魅力一样!


5
投票

实际上,搞混jar文件绝不是一个好主意,因为每次升级到较新版本时,都需要记住再次重做此修复程序。答案是正确的,但是您只需要在其中创建platform-map.properties文件即可:

Windows_7-amd64=Win-x86

并将其添加到您的类路径中。


0
投票

对于在MacOS Catalina上存在相同问题的任何人,您都可以在我的仓库(https://github.com/pengyue/mysql-connector-mxj-mac-os-catalina)中遵循README.md,该仓库具有适用于MacOS Catalina的64位可执行文件,并且此改进的连接器在Catalina上有效。

解释我做了什么:

  • 从MySQL将64位可执行文件下载到文件夹5-5-9
  • [在platform-map.properties中添加64位MacOS的平台映射
  • 使用jar cvf mysql-connector-mxj-db-files-5.0.12.jar .创建罐子
  • 用刚创建的jar替换mvn设置文件夹~/.m2/repository/mysql/mysql-connector-mxj-db-files/5.0.12/中的jar。

此解决方案适用于我的项目,不幸的是,我无法找到mysql-connector-mxj的github,因为它已被弃用且不再可维护。

另一个选择是使用wix-embedded-mysql(https://github.com/wix/wix-embedded-mysql)代替mysql-connector-mxj,但这可能需要在项目中进行一些代码更改。

© www.soinside.com 2019 - 2024. All rights reserved.