linux下编译idl工程,linux 下 JAVA+IDL中调用中的问题

Java在调用IDL导出的java类,在SUSE linux总是提示下面错误:

Failed to load javaidlb from

from default location.

而在Redhat AS3 ,Fedora,windows上却没有这个问题。仔细测了一下,得以下结果:

1)SUSE64位系统+IDL63环境 java无法调用IDL导出java类。(32位系统可以)

2)SUSE32位和64位+系统IDL64环境 java都无法调用IDL导出java类。

3)IDL70都可以。

估计是IDL70修正在SUSE上的bug。出现这个问题原因需要解释java调用IDL导出java类机制。

java能调用idl导出的java类,并不是把IDL的功能导成了java程序。它只是导出了java的一个IDL的接口类。在java调用IDL的功能时,实际上是通过这个接口用IDL运行了IDL程序,并接受和发送和IDL程序的信息。

IDL在负责java和idl转换功能有一个封装的java包-----javaidlb.jar,这个包在IDL的安装目录

IDL_dir/resource/bridges/export/java目录下面。

出现错误的原因就是java没有正常加载javaidlb.jar这个包去调用IDL编译器。

-------------------------------------------------------------------------------------------------------------------

在window下面IDL可以自己找到这个javaidlb.jar这个包。而在Linux和Unix下面需要执行IDL安装目录bin下面两个脚本来配置参数和路径,才可以正常使用java调idl功能。这个两个脚本是:

idl_setup.bash

bridge_setup.bash

更多可以看帮助对java调用IDL配置的说明---

--------------------------------------

而在suse上出的问题,估计是IDL这个功能在suse系统bug。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值