将封装了envi功能的IDL类导出成java类,方便java调用
2015-11-05 11:12
169 查看
目的:
用IDL将ENVI的功能封装成为IDL的类,并使用IDL的对象导出功能把这些功能类导出为java类,方便java调用。(本来想直接通过GP工具调用的,但是没有授权文件)
操作步骤:
1、如何用IDL封装ENVI,使其能够被IDL对象导出工具导出
在类的init中初始化ENVI,并使用批处理模式,代码如下:
CALL_PROCEDURE,'ENVI',/restore_base_save_files
CALL_PROCEDURE,'ENVI_BATCH_INIT',/NO_STATUS_WINDOW
注意:在写IDL程序时,如果使用ENVI函数或其他外部函数时,请使用CALL_PROCEDURE或CALL_FUNCTION,另外外部函数需要放到ITT\IDL64\lib文件夹下。
2、如何使用导出工具导出IDL对象
IDL可以通过对象导出助手导出成JAVA对象,以下是一个小例子和一些注意事项。
首先,IDL的LICENSE中需要注册对象导出助手,详细说明请参看IDL帮助中的Supported Platforms and IDL Modes。
其次,导出JAVA对象请确保机器已经安装了JAVA JDK 1.5或更高版。
再次,导出JAVA对象请将系统环境变量中的变量Path的最前面加上“JAVA_PATH\ jdk1.6\bin\;”,其中JAVA_PATH是JAVA的安装目录,请查看该路径下是否有javac.exe,没有请重装JAVA。设置好了环境变量请重起IDL。
打开IDL,在IDL命令行中输入IDLEXBR_ASSISTANT启动对象导出助手,点击菜单栏File->New Project来选择导出JAVA对象,在弹出的对话框中选择写好的IDL类文件(*__define.pro),选择例子文件“ITT\IDL64\examples\doc\bridges\ helloworldex__define.pro”,然后点击菜单栏Build->Build Object来导出文件。
3、如何使用导出IDL对象
使用IDL导出的对象本质上是建立IDL与其他语言的接口,所以需要将你编写的IDL程序放到Exelis\IDL82\lib目录下供IDL运行环境调用。另外,如果IDL类的函数名和参数未改变,需要改变IDL程序的内容,则只需要修改lib文件中的IDL文件即可,不需要重新导出。如果需要增加或修改IDL类的函数或参数则对象也需要重新导出。
用IDL将ENVI的功能封装成为IDL的类,并使用IDL的对象导出功能把这些功能类导出为java类,方便java调用。(本来想直接通过GP工具调用的,但是没有授权文件)
操作步骤:
1、如何用IDL封装ENVI,使其能够被IDL对象导出工具导出
在类的init中初始化ENVI,并使用批处理模式,代码如下:
CALL_PROCEDURE,'ENVI',/restore_base_save_files
CALL_PROCEDURE,'ENVI_BATCH_INIT',/NO_STATUS_WINDOW
注意:在写IDL程序时,如果使用ENVI函数或其他外部函数时,请使用CALL_PROCEDURE或CALL_FUNCTION,另外外部函数需要放到ITT\IDL64\lib文件夹下。
2、如何使用导出工具导出IDL对象
IDL可以通过对象导出助手导出成JAVA对象,以下是一个小例子和一些注意事项。
首先,IDL的LICENSE中需要注册对象导出助手,详细说明请参看IDL帮助中的Supported Platforms and IDL Modes。
其次,导出JAVA对象请确保机器已经安装了JAVA JDK 1.5或更高版。
再次,导出JAVA对象请将系统环境变量中的变量Path的最前面加上“JAVA_PATH\ jdk1.6\bin\;”,其中JAVA_PATH是JAVA的安装目录,请查看该路径下是否有javac.exe,没有请重装JAVA。设置好了环境变量请重起IDL。
打开IDL,在IDL命令行中输入IDLEXBR_ASSISTANT启动对象导出助手,点击菜单栏File->New Project来选择导出JAVA对象,在弹出的对话框中选择写好的IDL类文件(*__define.pro),选择例子文件“ITT\IDL64\examples\doc\bridges\ helloworldex__define.pro”,然后点击菜单栏Build->Build Object来导出文件。
3、如何使用导出IDL对象
使用IDL导出的对象本质上是建立IDL与其他语言的接口,所以需要将你编写的IDL程序放到Exelis\IDL82\lib目录下供IDL运行环境调用。另外,如果IDL类的函数名和参数未改变,需要改变IDL程序的内容,则只需要修改lib文件中的IDL文件即可,不需要重新导出。如果需要增加或修改IDL类的函数或参数则对象也需要重新导出。
相关文章推荐
- jackson java转json hibernate懒加载造成的无限递归问题
- Java代码规范
- java学习4-继承
- JAVA的可变类与不可变类
- java中两种类型变量
- spring mvc 下 word 文档(含图片)导出
- java中怎么判断一个字符串中包含某个字符或字符串
- Swagger与SpringMVC项目整合
- JAVA 集合
- [异常] com.mysql.jdbc.ServerPreparedStatement.setBinaryStream(ILjava/io/InputStream;J)V
- 最常用的 Eclipse 快捷键总结
- Java对象序列化
- Spring中的AOP—基于Annotation的配置方式
- Java 编程下的同步代码块
- java.lang.UnsupportedClassVersionError 解决办法
- SpringBoot学习(一)入门
- java体系技术日志
- 创建第一个Android工程-Eclipse创建Android项目
- CXF创建简单的RESTful 风格的webservice
- Eclipse SVN的使用