gpt4 book ai didi

java - matlab javaaddpath 不再工作(使用 jdk 1.7 构建的 jar)

转载 作者:搜寻专家 更新时间:2023-11-01 03:09:05 26 4
gpt4 key购买 nike

我正在使用 javaaddpath 命令将外部 jar(由我开发)用于我的 matlab 项目(由我开发)。

我已经将我的编程环境从 Matlab r2011a 更新到 r2012b,jdk 从 1.6.0_29 更新到 1.7.0_09,windows 从 XP 更新到 7。

首先我没有重新编译我的 jar 文件,我的整个项目仍在运行(运行没有错误)。

但是现在,我正在尝试重新编译我的 jar 文件。我遇到了一些问题,但它解决了(参见:javac @<opiton_file> and encoding)。但是现在我的 jar 工具已经重建,我不能将它用到 matlab 中...... Matlab 显示错误:

Undefined variable "optimizer" or function "optimizer.Gui".

其中优化器是一个包(即 jar 文件中的一个目录,其中包含一个 Gui 类的目录)。

总而言之,我正在使用代码(最后一行必须弹出一个 JFrame):

javaaddpath('the full path of my jar file.jar');
optimizer.Gui;

无需更新 jar 文件的编译版本,它就可以工作。使用新版本(相同的源代码),matlab 输出错误。

我在 jar 文件的根目录中有一个 Main 类(包含一个 main 函数)和一个将此 Main 类指定为主类的 list 。这个 Main 类进行了一些测试,以确保 jar 文件中的所有功能都正常工作。所以我可以运行 java -jar my_jar_file.jar 并查看所有测试是否正常(其中一个测试显示了我的优化器.Gui)。

是不是javac版本和matlab不兼容?是因为我在文件编码方面遇到了一些问题吗?...

最佳答案

好的,我已经重新安装了 JDK 1.6.0_37(最后一个可用的 1.6 版本)。我已经使用了我的构建工具 (create_jar.bat),只是强制使用这个旧 jdk 的路径。它在 Matlab r2012b 下运行得非常棒!

--> Matlab r2012b 与使用 jdk 1.7 构建的 jar 文件不兼容。

(感谢 Matworks 没有阻止这一点)。

关于java - matlab javaaddpath 不再工作(使用 jdk 1.7 构建的 jar),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14219589/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com