如何通过Java在后台执行matlab文件?

时间:2014-06-20 09:45:11

标签: java matlab invoke

我有一个Java程序,它对读取和执行函数的matlab文件进行了一些更改。有没有办法通过Java程序调用和运行这个read.m文件,而无需打开Matlab?我试着搜索matlabcontrol文档,但我找不到任何相关的东西。如果有人能指导我,我将不胜感激。

提前谢谢。

public static void tomatlab() throws MatlabConnectionException, MatlabInvocationException {


        MatlabProxyFactoryOptions options =
            new MatlabProxyFactoryOptions.Builder()
                .setUsePreviouslyControlledSession(true)
                .build();
        MatlabProxyFactory factory = new MatlabProxyFactory(options);
        MatlabProxy proxy = factory.getProxy();


        proxy.eval("addpath('C:\\path_to_m_file)");
        proxy.feval("read");
        proxy.eval("rmpath('C:\\path_to_m_file')");

        // close connection
        proxy.disconnect();

    }

1 个答案:

答案 0 :(得分:0)

您需要一个运行时环境和M代码。我看到的可能性是:

  • 使用matlab控件打开matlab
  • 使用构建器ja,它部署jar,包括运行时的必要部分
  • 如果您的M代码与八度音程兼容,您可以使用八度音阶的c ++接口创建一个dll,可以独立于Matlab使用。