1

SI 有一些 MATLAB 脚本,我使用 MATLAB builder JA 成功地将它们编译成 .jar。我已将此 jar 导入到一个测试项目中,它工作正常,但是当我尝试将该 .jar 文件导入另一个项目时,我收到此错误:

{Warning: Wrong JPEG library version: library is 80, caller expects 62} 
{??? Error using ==> jpeg_depth
Wrong JPEG library version: library is 80, caller expects 62

Error in ==> readjpg at 13



Error in ==> imread at 443

启动错误的项目使用swing和awt,.jar工作的测试项目没有。那么,这可能是相关的吗???我的意思是,这就像使用 awt 启动 libjpeg 80 的事实,并且似乎 .jar 已使用 libjpeg60 版本编译。所以,我的问题是: - 有什么方法可以强制 MATLAB 在编译时使用 libjpeg80?- 如果没有,我该怎么办?

提前致谢。

PS:似乎该错误与使用 libjpeg 的所有功能有关,因为当代码具有 Swing Imagicon 或 BufferedImage 时会给出此错误,而不是当这种代码(图像操作)不存在时。所以,.jar 是针对 libjpeg.so.62 头文件编译的,我需要它来重新编译 libjpeg.so.8。我试过删除 libjpeg.so.62 并重新编译,但这没有用。有什么帮助吗?

4

1 回答 1

1

已解决:我使用了不正确的 JRE。作为默认项目,我在我的项目中使用了系统JRE,在将其更改为MATLAB自带的之后,问题就消失了。希望这可以帮助某人。

于 2012-11-30T12:03:15.460 回答