bcb编译roaddevtxDll库调用JavaVM ->GetEnv出错解决方法

bcb编译roaddevtxDll库调用JavaVM ->GetEnv出错解决方法(wang@20150919)

 

在新安装的win7系统装bcb6.0,编译roaddevtxDll库时,提示3个出错

 

bcb编译roaddevtxDll库调用JavaVM ->GetEnv出错解决方法_第1张图片

bcb编译roaddevtxDll库调用JavaVM ->GetEnv出错解决方法_第2张图片

刚开始以为是jdk-6u22-windows-i586没装,装了jdk,环境变量按之前的PC配置,配置成:

JAVA_HOME=D:\Program Files (x86)\Java\jdk1.6.0_22

CLASS_PATH=.;%JAVA_HOME%\lib

Path+=%JAVA_HOME%\bin

重新编译还是出错;

 

以为是装win7 64位的问题,重新装一个虚拟的winxp 32bit系统,再装了bcb再编译还是提示同样的错误;最后,在原来可以编译的PC上进入bcb安装路径查找lib和h的文件,发现include目录下的有几个j打头的文件比其它的.h文件新,把它们拷贝出来,替换到win7环境下的bcb安装目路下的include目录中,再次编译就能正常通过,后来在虚拟机中只要把jni.h拷贝过去替换就可以正常编译。

 

最后打开两个文件进行对比,发现bcb默认安装的版本比较低,并且搜索不到GetEnv函数,倒至上面的错提示为“GetEnv()函数找不到”。

 

查了一天多,终于把该问题解决了。高兴的是,可以在win7系统上使用bcb进行开发,不需要在虚拟机中来回切换。

 

注:Jni.h也可以从D:\Program Files (x86)\Java\jdk1.6.0_22\include目录中拷贝

你可能感兴趣的:(other)