使用IKVM时遇到的问题汇总

       这几天都纠结的一个事情,做接口对接,服务端是Java写的,客户端用的是C#的,想必都会遇到这类问题,跨平台对接,这件事对开发大手来说可能根本算不得问题,但是对我这种刚毕业的、不是开发专业的新人来说还真是难倒我了,一开始的想法很简单,作为主流开发语言,它们之间应该有办法之间进行语言转换的,事实证明我太年轻了。。。有些方法是语言自己特有的,想要自由转换平台,没有足够的开发经验和对平台语言间的深刻了解是无法完成的,尤其是我这样的新手。

       接口做了好久,只是因为其中的一个加密方法,我无法用C#实现,真是折磨啊,接下来的几天里一只在研究和使用java语言。无奈并没有足够的时间让我去学习这门语言,最后决定想个取巧的办法,然后就找到了IKVM这个工具。

       上面的话写下来鼓励自己要更努力。

与主题无关的就用链接代替了,有兴趣可以看下

一、IKVM工具简介:戳我

二、IKVM使用方法:

1.下载:官网、百度盘

2.环境:

a.添加环境变量IKVM_HOME,其值为:安装路径/文件名。(例如:C:\Program Files (x86)\IKVM\ikvm-7.2.4630.5)

b.修改PATH的值,%IKVM_HOME%/bin

c.C# .NET Framework4

3.把Java代码打包成jar,然后...

a.在命令行里输入ikvmc -out:“生成dll的路径/dll文件名称(xxx.dll)” “jar包路径/jar包名称(xxx.jar) “其他引用(xx.jar)””

b.在命令行里输入ikvmc -target:library -reference:“这里是如果有引用其他包时要填的引用,没有可以不写” “这里是要用的jar包(xxx.jar)”  ps.dll生成到用户文件夹下面了

三、IKVM使用问题:

1.打包时:

1>以IKVM0108:not a class file "aaa/bbb.class"最为常见,打包的过程发现了这个,后面不用试了,绝对无法引用的,这个一般就是项目建错。。建的proj不行就换一种吧

2>然后就是各种Warning: class "xxx" not found对于有依赖关系的库,需要从最下面那个,大家都依靠它的那个库转换起,这些类可能还依赖于别的类,依赖的类也需要找出来,全部打包成一个新的jar,这是体力活。。。暂时没有好的方法

2.引用时:

1>必要引用都在%IKVM_HOME%/bin文件夹下

3.其他:

1>待更新

你可能感兴趣的:(遇到的问题,dll,开发经验,跨平台,java)