在 Matlab 中使用 Java 类

2024-01-08

我已经为这个问题苦苦挣扎了两天,但我发现没有任何资源能够解决它。

我试图从Matlab(版本7.13.0.564(R2011b))调用java类(在底部添加了链接)。我已经使用 java 1.6 将 java 类编译成 .class 文件,并且还使用 javaaddpath 添加了文件所在文件夹的路径(当然,我已经检查了动态路径列表中的路径是否正确)。但是,当我尝试使用 javaMethod('main','PerlinNoiseGenerator','') 从 Matlab 调用该类时,出现错误:

“Java 类路径上无法找到 PerlinNoiseGenerator 类”

如果有从 Matlab 调用 java 的经验的人能够整理出一个简短的教程来说明如何做到这一点,我将非常感激。我可能要分发我的代码,所以我有点需要动态设置java路径,从我读到的内容来看,它确实应该是可能的,尽管我已经看到帖子表明它可能是问题的原因。

http://svn.j3d.org/code/tags/Xj3D-M10/src/java/org/j3d/texture/procedural/PerlinNoiseGenerator.java http://svn.j3d.org/code/tags/Xj3D-M10/src/java/org/j3d/texture/procedural/PerlinNoiseGenerator.java


通常我创建包含 java 类的 jar 文件。我之前在加载单个 java 类时也遇到过问题。在您的情况下,我在 xubuntu 13.04 x64 和 Matlab 2013a x64 上执行了以下操作来加载您的特定类:

  1. 使用 java 6(不是默认的 7)和选项编译它-d .创建一组包文件夹,因为您的类定义了一个包org/j3d/texture/proecedural/ etc:

    /usr/lib/jvm/java-6-openjdk-amd64/bin/javac -d . PerlinNoiseGenerator.java这将编译该类并在当前主管中创建(因此.) 包文件夹集。

  2. 使用以下命令再次制作包含您的类的 jar 文件jar来自java 6.我命名它javaNoise.jar:

    /usr/lib/jvm/java-6-openjdk-amd64/bin/jar cf javaNoise.jar ./org/j3d/texture/procedural/PerlinNoiseGenerator.class

  3. 在Matlab中,在目录中javaNoise.jar is:

    javaaddpath('./javaNoise.jar');

  4. 创建 java 类的对象:

    png=org.j3d.texture.procedural.PerlinNoiseGenerator()

    % results in: png = org.j3d.texture.procedural.PerlinNoiseGenerator@3982a033

  5. 为了测试它,我只是生成了一些一维噪声:

    png.noise1(1.2)

    ans = -0.0960

希望这可以帮助。

P.S. javaMethod('main','PerlinNoiseGenerator','')不会工作,因为这个类没有 main 方法:-)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Matlab 中使用 Java 类 的相关文章

随机推荐

  • 使用 JAX-RS 和 Jackson 将 JPA 实体转换为 REST 表示的最佳方法

    我正在寻找一种将一些 JPA 实体导出到 REST API 的方法 但不是每次我想根据入口点共享一些特定字段时都发送整个实体 这是一个小例子 假设我们有一个Author具有很少字段的类 Entity public class Author
  • YouTube iframe api 未触发 onYouTubeIframeAPIReady

    我已经与 youtube iframe api 斗争了一段时间了 不知怎的方法onYouTubeIframeAPIReady并不总是被触发 从症状来看 似乎是负载问题 检查器中没有显示任何错误 这是我的代码 HTML div div
  • Emscripten 找不到 cmake 的路径

    我已经将说明仔细阅读了好几遍 https kripken github io emscripten site docs getting started downloads html 查了无数论坛 还是无法解决这个问题 我正在运行 Windo
  • 是否可以用现有图中的常量替换占位符?

    我有一张经过训练的模型的冻结图 它有一个tf placeholder我总是向其提供相同的价值 我想知道是否可以将其替换为tf constant反而 如果是这样的话 任何例子将不胜感激 编辑 这是代码的样子 以帮助可视化问题 我正在使用 由其
  • WCF:从另一方收到不安全或安全错误的错误

    我创建了一项具有 aspnet 角色和安全性的 WCF 服务 当我在一个网站上使用它并尝试检查是否使用正确的用户名和密码时 它工作得很好 但是如果用户名和密码不正确 它会给我一个错误 从对方收到不安全或不正确安全的故障 派对 有关错误代码和
  • 从终端构建、部署和运行 iphone 模拟器

    我是 mac 和 xcode 的新手 请告诉我 iphone xcodeproject 在 xcode IDE 之外执行以下任务的过程 使用 xcodebuild 命令构建完成 在模拟器中部署 在模拟器中运行 如何使用 ant Apples
  • 默认参数的词法声明问题[重复]

    这个问题在这里已经有答案了 我在定义一些时遇到一些问题功能声明后class 我用的是默认的params之前在声明函数时 但我不知道是否也可以使用函数或类作为默认参数 我的代码是这样的 const Matrix class some code
  • Jquery .on 与双击事件

    为什么这会起作用 document on dblclick areaA tr has td function e code here 这并不 areaA tr has td on dblclick function e Code here
  • 为什么匿名类中只能访问最终变量?

    a只能在这里最终决定 为什么 我怎样才能重新分配a in onClick 方法而不将其保留为私有成员 private void f Button b final int a b addClickHandler new ClickHandle
  • 为什么缺少 object.__getattr__ ?

    为什么object似乎没有 getattr 方法 它定义了两者 setattr and delattr 这三个都不需要吗 gt gt gt object setattr
  • CNContact 标识符中的“:ABPerson”字符串是什么?

    我的 iOS 应用程序会时不时地检查联系人并将新联系人导入到自己的数据库中 我检查了该联系人 它已经存在identifier字段 通常由 UUID 填充 CNContactStore store CNContactStore new sto
  • 关闭 Tkinter 后运行 wxPython

    我们有两个应用程序 一个使用 Tkinter 界面开发 另一个使用 wxPython 构建 两者都相当复杂 运行完 Tkinter 应用程序后 我希望在选择 Tkinter 应用程序中的按钮后运行 wxPython 应用程序 是否可以切换事
  • 在 PHP 中将段落分解为句子

    我一直在使用 explode mystring 将段落拆分成句子 然而 这不包括用不同标点符号结束的句子 例如 有没有办法使用数组而不是单个字符作为分隔符 或者还有另一种使用各种标点符号进行拆分的巧妙方法吗 I tried explode
  • 使用阻塞 IO 的多线程会损坏 Java 中的文件

    AIM 使用 Java 中的阻塞 IO 构建多线程应用程序来下载文件 请不要建议我使用非阻塞 IO 我被告知要使用这个 Issue 我的代码在下载服务器上托管的文件的客户端计算机上运行良好 但是 问题是我的服务器使用多个线程播种文件 在所有
  • ViewBag、ViewData、TempData、Session - 如何以及何时使用它们?

    ViewData 和 ViewBag 允许您访问视图中从控制器传递的任何数据 这两者之间的主要区别在于访问数据的方式 在 ViewBag 中 您使用字符串作为键来访问数据 ViewBag numbers 在 ViewData 中 您使用属性
  • 服务和广播接收器之间的区别

    我试图了解服务和广播接收器之间的区别是什么 在我看来 他们也可以做同样的事情 例如我有一个应用程序 App1 提供名为 ToastHelloWorld 的服务 该服务仅创建一个 Toast 和 stopSelf 我使用带有操作名称的意图过滤
  • 适用于 Android 的 card.io Mono (Xamarin Studio)

    有没有人成功创建了一个他们愿意分享的card io包装器 可以在Android应用程序的Mono中使用 或者有人可以阐明我做错了什么吗 创建一个新的Android Java 绑定库 Project 添加 jar 和 so 文件卡 io SD
  • 找出 Google Big Query 中每个字段占用的空间量

    我想优化我的 Big Query 和 google 存储表的空间 有没有办法轻松找出表中每个字段所获得的累积空间 这对我来说并不简单 因为我有一个复杂的层次结构 有许多重复的记录 您可以在 Web UI 中执行此操作 只需在下面的查询中键入
  • 增强位于 TypeScript 中声明的命名空间中的接口

    我想增强IHttpPromise
  • 在 Matlab 中使用 Java 类

    我已经为这个问题苦苦挣扎了两天 但我发现没有任何资源能够解决它 我试图从Matlab 版本7 13 0 564 R2011b 调用java类 在底部添加了链接 我已经使用 java 1 6 将 java 类编译成 class 文件 并且还使