关于java调用cl生成的dll

关于java调用cl生成的dll,出现load IA 32-bit .dll on a AMD 64-bit platform错误?
使用包含java include时

cl -I %JAVA_HOME%\include -I %JAVA_HOME%\include\win32 -LD HelloNative.c -FeHelloNative.dll
出现错误:
LINK : fatal error LNK1181: 无法打开输入文件“Files\Java\jdk1.8.0_152\include.obj”

使用

cl -I -I -LD HelloNative.c -FeHelloNative.dll
可以编译出dll
但是调用时出现:
Exception in thread "main" java.lang.UnsatisfiedLinkError: C:\Program Files\Java\jdk1.8.0_152\bin\HelloNative.dll:
Can't load IA 32-bit .dll on a AMD 64-bit platform

jdk是64bit的,解决办法?

Can't load IA 32-bit .dll on a AMD 64-bit platform 意思就是不能在64位系统中调用32位的dll,你去对应找64位dll就行。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^

关于第二个错误,解决办法:cl的配置以及其相关依赖修改为x64,因为当前配置的cl为32位的,使用64位的jdk环境会报此错误。另一种方法就是切jdk的环境为32位的