1

我在 MATLAB 中使用 java 包时遇到了困难

首先,我将我的 .jar 添加到动态路径中:

filename = fullfile(pwd,'Compiled','SpectrometerInterface.jar');
ls(filename)

javaaddpath(filename);

ls返回SpectrometerInterface.jar确认文件存在,并javaclasspath确认确实已添加。

然后当我请求一个对象时,使用

obj = javaObject('com.jellymatter.spectrometerinterface.UDPSpectrometer');

或者

obj = com.jellymatter.spectrometerinterface.UDPSpectrometer()

它说找不到课程。它肯定在.jar中的正确目录中,我的类的简化版本如下

package com.jellymatter.spectrometerinterface;

public class UDPSpectrometer {
    private UDPInterface inter = null;

    public UDPSpectrometer(){
        /* Nothing here */
    }

    public void connect(String addr, int p1, int p2) throws CommunicationException{
        ...
    }

    public double[] get() throws CommunicationException, SpectrometerNotCalibratedException {
        ...
    }
}

有什么建议么?

编辑:诊断

MATLAB 的 Java 虚拟机为已编译的 java (JDK 1.7) 降低了版本 (JRE 1.5)。

编辑:解决方案

我通过使用 JDK 1.5 编译解决了这个问题,但也可以在 MATLAB 中升级 JVM。

4

1 回答 1

0

请看一下这个并设置你的classpath.txt

于 2013-03-14T15:19:14.857 回答