Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用matlabcontrol从netbeans调用matlab_Java_Matlab_Matlab Deployment - Fatal编程技术网

Java 使用matlabcontrol从netbeans调用matlab

Java 使用matlabcontrol从netbeans调用matlab,java,matlab,matlab-deployment,Java,Matlab,Matlab Deployment,请帮帮我!当我试图使用java中的matlabcontrol调用我的matlab函数时,它告诉我系统找不到指定的文件 package matcontro; import matlabcontrol.*; public class HelloWorld { public static void main(String[] args) throws MatlabConnectionException, MatlabInvocationException {

请帮帮我!当我试图使用java中的matlabcontrol调用我的matlab函数时,它告诉我系统找不到指定的文件

package matcontro;

import matlabcontrol.*;

public class HelloWorld

 {

      public static void main(String[] args) throws MatlabConnectionException, MatlabInvocationException
     {
         // create proxy
         MatlabProxyFactoryOptions options = new MatlabProxyFactoryOptions.Builder()
                 .setUsePreviouslyControlledSession(true)
                 .build();
         MatlabProxyFactory factory = new MatlabProxyFactory(options);
        MatlabProxy proxy = factory.getProxy(); 

         // call builtin function
         proxy.eval("disp('hello world')");

         // call user-defined function (must be on the path)
         proxy.eval("addpath('C:\\ Users\\HASENDE\\My Documents\\MATLAB')");
         proxy.feval("myfunc");
         proxy.eval("rmpath('C:\\ Users\\HASENDE\\My Documents\\MATLAB')");

         // close connection
         proxy.disconnect();
     }
 }
我得到的错误如下

运行:

线程“main”matlabcontrol.MatlabConnectionException中出现异常:无法启动MATLAB。命令:[matlab,-r,javaaddpath'C:\Users\HASENDE\Documents\NetBeansProjects\Java类路径库\matlabcontrol-4.0.0.jar';matlabcontrol.MatlabClassLoaderHelper.configureClassLoading();javarmpath'C:\Users\HASENDE\Documents\NetBeansProjects\Java类路径库\matlabcontrol-4.0.0.jar';matlabcontrol.MatlabConnector.connectFromMatlab('PROXY_RECEIVER_01caa56d-9ed7-4e39-a45b-345051024d49',2100);] 位于matlabcontrol.RemoteMatlabProxyFactory.createProcess(RemoteMatlabProxyFactory.java:305)的matlabcontrol.RemoteMatlabProxyFactory.requestProxy(RemoteMatlabProxyFactory.java:116) 位于matlabcontrol.RemoteMatlabProxyFactory.getProxy(RemoteMatlabProxyFactory.java:134) 位于matlabcontrol.MatlabProxyFactory.getProxy(MatlabProxyFactory.java:81) 位于matcontrolo.HelloWorld.main(HelloWorld.java:21) 原因:java.io.IOException:无法运行程序“matlab”:CreateProcess error=2,系统无法在matlabcontrol.RemoteMatlabProxyFactory.CreateProcess(RemoteMatlabProxyFactory.java:292)的java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)处找到指定的文件…4更多信息 原因:java.io.IOException:CreateProcess error=2,系统找不到指定的文件 在java.lang.ProcessImpl.create(本机方法) 位于java.lang.ProcessImpl.(ProcessImpl.java:188) 在java.lang.ProcessImpl.start(ProcessImpl.java:132) 在java.lang.ProcessBuilder.start(ProcessBuilder.java:1021)上还有5个 Java结果:1 生成成功(总时间:4秒)

Exception in thread "main" matlabcontrol.MatlabConnectionException: Could not launch MATLAB. Command: [matlab, -r, javaaddpath 'C:\Users\HASENDE\Documents\NetBeansProjects\Java Classpath Libraries\matlabcontrol-4.0.0.jar'; matlabcontrol.MatlabClassLoaderHelper.configureClassLoading(); javarmpath 'C:\Users\HASENDE\Documents\NetBeansProjects\Java Classpath Libraries\matlabcontrol-4.0.0.jar'; matlabcontrol.MatlabConnector.connectFromMatlab('PROXY_RECEIVER_01caa56d-9ed7-4e39-a45b-345051024d49', 2100);]

at matlabcontrol.RemoteMatlabProxyFactory.createProcess(RemoteMatlabProxyFactory.java:305) at matlabcontrol.RemoteMatlabProxyFactory.requestProxy(RemoteMatlabProxyFactory.java:116)

at matlabcontrol.RemoteMatlabProxyFactory.getProxy(RemoteMatlabProxyFactory.java:134)

    at matlabcontrol.MatlabProxyFactory.getProxy(MatlabProxyFactory.java:81)

    at matcontro.HelloWorld.main(HelloWorld.java:21)

Caused by: java.io.IOException: Cannot run program "matlab": CreateProcess error=2, The system cannot find the file specified at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029) at matlabcontrol.RemoteMatlabProxyFactory.createProcess(RemoteMatlabProxyFactory.java:292) ... 4 more

Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified

    at java.lang.ProcessImpl.create(Native Method)

    at java.lang.ProcessImpl.<init>(ProcessImpl.java:188)

    at java.lang.ProcessImpl.start(ProcessImpl.java:132)

    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1021)   ... 5 more

Java Result: 1