1 安装java环境:

http://www.oracle.com/technetwork/java/javase/downloads/index.html

下载JDK最新版本并安装,CloudSim需要运行在jdk1.6以上版本。

以jdk1.6.0_24为例,默认的安装目录为C:\Program Files\Java\jdk1.6.0_24。

设置环境变量:

新建系统变量JAVA_HOME,变量值设为JDK安装目录,即C:\Program Files\Java\jdk1.6.0_24

Path中加入路径%JAVA_HOME%\bin;%JAVA_HOME%\bin\javac;

ClassPath中加入路径%JAVA_HOME%\lib\dt.jar; %JAVA_HOME%\lib\tools.jar

2 Matlab代码编译成Java包:

在matlab中输入命令查看是否能够访问到Java配置:

>> getenv JAVE_HOME

配置成功会返回自己配置的jdk路径,如果配置路径过程中,matlab已经打开,请重启。

新建一个函数文件funTest.m(必须是函数文件:New File->Function!文件中只能有函数,不能有独立脚本)

输入以下内容:

function [ out ] = funTest( a, b )
out = a + b ;
end

Command Window中输入:

>> deploytool

(这里有更改,Test.prj更改为FunTest.prj)

(这里有更改,类名CTest更改为CFunTest)

找到与工程同名的文件夹对应文件”distrib\FunTest.jar“这个文件就是生成的Java包。(FunTest路径最好不要太深!否则会报错。)

3 使用64/32位MatLab+64/32位的Jre:

(切记,要保持一致。不然会调用错误,也可使用同是32位的,这里以64位为例)

32/64位Jre下载:http://www.java.com/zh_CN/download/manual.jsp

下载后安装。

4 使用ecilpse调用Matlab生成的Java包。

找到Matlab安装路径,我这里是D:\Program Files\MATLAB\R2013a\toolbox\compiler\deploy\win64下面的MCRInstaller.exe文件。进行安装。

新建一个Java工程,插入以下代码:

package Test;

import com.mathworks.toolbox.javabuilder.*;
import FunTest.*; public class myFunTest {
/**
* @param args
* @throws MWException
*/
public static void main(String[] args) throws MWException {
// TODO Auto-generated method stub
CFunTest cp=new CFunTest();
Object bn[]=null;
MWNumericArray a = null;
MWNumericArray b = null;
a=new MWNumericArray(Double.valueOf(), MWClassID.DOUBLE);
b=new MWNumericArray(Double.valueOf(), MWClassID.DOUBLE);
bn=cp.funTest(,a,b);  //第一个参数 1 指函数返回的变量的个数
System.out.println( bn[]);
}
}

运行后输出结果:10

调用成功!

CloudSim安装和配置

http://www.cloudbus.org/cloudsim/下载CloudSim,以CloudSim2.1.1为例。将其解压到磁盘,例如C:\cloudsim-2.1.1。

设置环境变量:

ClassPath中加入路径C:\cloudsim-2.1.1\jars\cloudsim-2.1.1.jar; C:\cloudsim-2.1.1\jars\cloudsim-examples-2.1.1.jar

此时,可以用同样的方法在CloudSim中对Matlab代码进行调用。

使用ecilpse(Java)调用Matlab代码的更多相关文章

  1. JAVA调用matlab代码

    做实验一直用的matlab代码,需要嵌入到java项目中,matlab代码拼拼凑凑不是很了解,投机取巧采用java调用matlab的方式解决. 1.    matlab版本:matlabR2014a ...

  2. (转)JAVA 调用matlab

    本文仅用于学习. 原文地址链接:http://blog.csdn.net/wannshan/article/details/5907877 前段时间摸索了java调用matlab东西,不说学的有多深, ...

  3. java调用matlab生成exe文件

    一.Matlab生成Java Package 1.在MATLAB的Command Window输入deploytool命令,选择Library Compiler. 2.在弹出的窗口选择Java Pac ...

  4. java调用matlab绘图

    一 注意事项 1: MatLab的版本必须是2006b+(包括2006b或更高版本),因为只有在这些版本中才有MATLAB Builder for Java(也叫Java Builder). 2: 运 ...

  5. windows和linux环境下java调用C++代码-JNI技术

    最近部门做安卓移动开发的需要调C++的代码,困难重重,最后任务交给了我,查找相关资料,没有一个教程能把不同环境(windows,linux)下怎么调用说明白的,自己在实现的过程中踩了几个坑,在这里总结 ...

  6. 通过JNI实现java调用C代码和C代码调用java的代码

    一.java调用C代码 1)java中需要声明调用的函数,也就是native方法,并通过System.LoadLibrary来调用dll或者so(C代码).实例代码如下: public class H ...

  7. java调用python代码

    同样的我们需要安装jython,具体的步骤如下: 1. 去 http://sourceforge.net/projects/jython/ 下载最新的jython相关的jar包. 2. 下载下来的ja ...

  8. java调用matlab函数

    如何将实验结果在matlab中可视化呢,下面使用java语言编程,调用matlab中的函数: 本人安装的是Matlab7.11.0 (R2010a)和 Eclipse 4.2 : 1)首先设置环境变量 ...

  9. 01_JNI是什么,为什么使用,怎么用JNI,Cygwin环境变量配置,NDK案例(使用Java调用C代码),javah命令使用

    1 什么是JNI JNI Java本地开发接口 JNI是一个协议,这个协议用来沟通java代码和外部的本地代码(C/C++) 通过这个协议,java代码就可以调用外部的C/C++代码,外部的C/C++ ...

随机推荐

  1. LeeCode(No2 - Add Two Numbers)

    LeeCode是一个有意思的编程网站,主要考察程序员的算法 第二题: You are given two non-empty linked lists representing two non-neg ...

  2. js css 点亮 星级评分

    利用css 和 js 实现星级评分 <!DOCTYPE html> <html lang="en"> <head> <meta chars ...

  3. ZPL打印机命令解释

    个人备忘: 1.装驱动,装驱动要装对应的ZPL或者EPL版本,目前发现GK888T无需选择,直接装GK888T即可,其他机型未知. 2.标签设计,文本部分用SimSun-ExtB字体,变量内容部分用Z ...

  4. Mysql 查看表数据以及索引大小

    如果想查看 Mysql 数据库的总的数据量或者某个表的数据或者索引大小,可以使用系统库 information_schema 来查询,这个系统库中有一个 TABLES 表,这个表是用来记录数据库中表的 ...

  5. VS 2010 快捷键大全

    Ctrl+E,D ----格式化全部代码 Ctrl+E,F ----格式化选中的代码 CTRL + SHIFT + B生成解决方案 CTRL + F7 生成编译 CTRL + O 打开文件 CTRL ...

  6. python学习之可变不可变

    在python的数据类型中,整数.字符串.元组是不可变的:而列表.字典是可变的.所以不用C的思维来修改一个整数,它相当于重新定义了一个整数(原来的被覆盖掉了),名字和原来一样,但与前面的同名变量没有一 ...

  7. PHP文件上传error的错误类型 - $_FILES['file']['error']

    假设文件上传字段的名称img,则: $_FILES['img']['error']有以下几种类型 1.UPLOAD_ERR_OK 其值为 0,没有错误发生,文件上传成功. 2.UPLOAD_ERR_I ...

  8. Murano Weekly Meeting 2015.10.13

    Meeting time: 2015.October.13th 1:00~2:00 Chairperson:  Serg Melikyan, PTL from Mirantis Meeting sum ...

  9. Fedora14 mount出现错误时解决办法【亲测有效】

    挂载时出现了如上图所示问题,看第一条英语提示,我刚开始以为是文件权限不够,改了权限之后,依旧存在这样的问题, 于是,我上网查阅了一些资料: 在解决之前,先让我们一起来了解一下nfs: NFS最大功能就 ...

  10. pat04-树8. Complete Binary Search Tree (30)

    04-树8. Complete Binary Search Tree (30) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHE ...