Matlab and Java integration
I have done image processing in MATLAB and build my GUI in Java. I want to integrate MATLAB into Java. I want to use MATLAB Builder for 开发者_运维技巧this purpose. I want also to use neural network for classification. There are some excel files also. Is it possible that this code will be integrated in Java?
My other question is that I want used MATLAB BuilderJA to know how it works. When I type java -version
command, it gave me this error.
??? Attempt to execute SCRIPT java as a function:
C:\Program Files\MATLAB\R2009b\toolbox\matlab\general\java.m
C:\Program Files\Java\jdk1.6.0_21
When I use build command it gave me this error.
'javac' is not recognized as an internal or external command,
operable program or batch file.
Error: An error occurred while shelling out to javac (error code = 1).
Unable to build executable.
I have JDK installed. The path is C:\Program Files\Java\jdk1.6.0_21
. I am using R2009b
version
I want to run my code in Java, but I do not know how to fix this error. Can any one tell me how to resolve this error?
The first error message which you get when you type java -version
is a bit misleading; instead of
java -version
you need to say
!java -version
since you want to call an external program and not a MATLAB script or function. As stated in the comments by Amro this will only work if the directory containing java.exe is on your path. See Running External Programs in the MATLAB help for more info.
The error message you get comes from the fact that
- there happens to be a file java.m and MATLAB thinks you are trying to call this file
- that file only contains comments, since
java
is actually a sort of keyword in MATLAB, seedoc java
. - MATLAB realizes that you are not using the keyword in its correct form (which would be to call
java.something
to create an object of classsomething
) since you give a parameter - MATLAB ends up telling you in a strange way that
java
doesn't accept parameters (even though java.m does not contain the script, only its documentation)
Note that if you don't want to add the directory containing java.exe and javac.exe to the path, you could also try calling them with their full path name:
!C:\Program Files\Java\jdk1.6.0_21\blablabla\bin\javac.exe
精彩评论