【问题标题】:Can't add a java package to the dynamic java path in MATLAB无法将 java 包添加到 MATLAB 中的动态 java 路径
【发布时间】:2012-10-04 08:18:27
【问题描述】:

我想在 MATLAB 中使用 jdde。我的电脑上有 pretty-tools-JDDE-1.0.2.jar。 这是我在 MATLAB 中的代码:

javaaddpath('C:\test\pretty-tools-JDDE-1.0.2.jar');
conversation = com.pretty_tools.dde.client.DDEClientConversation();

我得到错误:

Undefined variable "com" or class "com.pretty_tools.dde.client.DDEClientConversation".

但是,当我调用 javaclasspath 函数时,jar 文件列在“DYNAMIC JAVA PATH”下。 为什么我会收到此错误?正确的方法是什么?

【问题讨论】:

标签: java matlab classpath


【解决方案1】:

JavaDDEx64 看起来像一个找不到的共享库/dll。您需要将其添加到库路径中。如果您有访问权限,一个快速的方法就是在您的 matalbroot()/bin/$arch 文件夹中复制一份($arch 将是 macos/win64 等)。

如果您没有对 matlabroot 的写入权限,那么您将“C:\jdde\”添加到现在位于启动文件夹中的 librarypath.txt 的副本中。 JavaDDEx64.dll 所在的位置。现在被 MATLAB 发现了。

【讨论】:

  • 如果我将 jar 文件添加到静态 java 路径并将 dll 添加到库路径,我可以让它工作。但是,这需要编辑文本文件并重新启动 MATLAB。我的 MATLAB 程序需要在任何计算机上运行,​​编辑 txt 文件并重新启动 MATLAB 不是一种选择。
  • stackoverflow.com/questions/4376565/java-jpa-class-for-matlab/…。请参阅这篇文章了解如何使用 ClassPathHacker.java 动态加载 java 类。
猜你喜欢
  • 1970-01-01
  • 2012-09-05
  • 2012-12-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-14
  • 2020-04-01
  • 1970-01-01
相关资源
最近更新 更多