正确安装Java for Matlab

Jos*_*mon 11 java matlab javac

我正在尝试使用来自Library Compiler(java包)的javac从Matlab代码中提取jar文件.

我已经设置JAVA_HOME为:

C:\Program Files\Java\jdk1.7.0_71

并添加到PATH:

C:\Program Files\Java\jdk1.7.0_71\bin.

当我进入java -version我的控制台时,我得到java version jdk1.7.0_71并运行javac -version节目jdk1.7.0_71.

但是,似乎matlab找不到javac,因此,我无法将我的.m代码编译成.jar文件.当我尝试编译.m代码时,我得到以下内容:

Error: An error occurred while shelling out to javac (error code = -1).
Unable to build executable.
Executing command: ""C:\Program Files\Java\Java\jdk1.7.0_11\bin\javac" -verbose - classpath "...\MATLAB\R2014a\toolbox\javabuilder\jar\javabuilder.jar" -d   "...\features_extraction\for_testing\classes"  "...\features_extraction\for_testing\features_extraction\Class1.java" "...\features_extraction\for_testing\features_extraction\Features_extractionMCRFactory.java" "...\for_testing\features_extraction\Class1Remote.java" "...\for_testing\features_extraction\package-info.java""
Run Code Online (Sandbox Code Playgroud)

这是我的Java bin文件夹下的javac.exe的目录存在:...\Java\jdk1.7.0_71\bin\bin\javac?我发现这个链接,Java和Matlab2014a之间的兼容性(这是我的版本)在这里.为了正确地将Matlab链接到Java,我应该检查什么?几天前,Matlab正在使用Java.

在我看来,PATH我注意到存在以下路径:C:\ProgramData\Oracle\Java\javapath其中有三个错误的快捷方式,java.exe,javac.exe和javax.exe.当我输入matlab控制台时,getenv JAVA_HOME我得到的 C:\Program Files\Java\jdk1.7.0_11时候我写version -java了:Java 1.7.0_11-b21 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode.当我javac在matlab控制台中编写时,我得到:Undefined function or variable 'javac'.

当我尝试构建C++库时,我遇到了类似的问题:错误:shelling到mbuild时发生错误(错误代码= -1).无法构建可执行文件.

编辑:在我的情况下,是否缺少适当的MCR?

ale*_*bit 1

根据此链接中的答案

http://www.mathworks.com/matlabcentral/answers/131639-matlab-deploytool-not-working-fails-while-building

看来你必须安装 JDK 1.7.0_11-b21,这是你的 MATLAB 版本与编译成 jar 兼容的版本。另外,安装该特定版本后,您应该修改 JAVA_HOME 和 PATH 环境变量。尝试一下看看是否有帮助。