最近项目中,与对方公司调试接口。对方公司采用的Java,我们公司采用C#。Java提供的加解密算法在C#找相同的实现有一定难度,而且时间紧迫,所有就去找有没有C#调用Java的例子,没想到果然有。
Java部分:准备开发工具 intellij idea,新建一个Java Project,SDK 选择1.8. 项目建设成功后,选择src文件夹,新建一个Package,后面会用到。
填写对应代码,如果有些包名没找到, 直接Google:包名 download 即可下载。
最后生成Build一下,Java程序就结束了。
然后下载IKVM工具,解压,把上面Build的AESUtils.class文件以及程序依赖的第三方包放到IKVM运行目录下。
先将第三方包生成dll(或exe):ikvmc xx.jar
然后生成自己项目的Jar包:jar cf xx.jar xx.class
把生成的jar包重命名为zip文件,然后解压缩,然后打开,新建文件夹,名字为包名,将class文件剪切到包中。
然后当前压缩为zip,重命名为jar文件,复制到ikvm运行目录。
此时ikvm目录下有这几个文件
执行生成最终dll操作:ikvmc xx.jar -r:commons-lang3-3.12.dll -r:commons-codec-1.15.exe -out:xx.dll
此时会生成我们需要的dll
此时用viusal studio 新建项目进行引用验证。
首先添加nuget包
然后添加上面三个dll(或exe)的引用
调用java代码验证