- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
将java库转换为.net库
记录,以备后用动机:??? 充分利用java阵营众多的类库?工具:IKVM――把java bytecode?转换成IL程序,并提供大部分J2SE 1.4类的.net实现(IKVM.GNU.Classpath.dll)winrar――提取jar,打包jarJava IDE(可选)――阅读源代码,浏览类之间的关系,我用的是eclipse反编译工具(可选)――没源代码时用,主要也是浏览类与类之间的关系,java反编译我用的是DJ Java Decompiler,.net用Reflector。?原理:java也好,.net也好,其执行无非就是运行时?+?库,把java汇编指令一条一条转换为IL汇编指令,就可以实现java程序到.net程序的转换――你可以通过最纯正的.net使用方式来使用这些类库/程序。ikvm实现的就是这样一个功能。如果一个java程序调用一大堆java类库,那么必须把这些程序和类库全部转换成.net的IL格式,这个程序才能执行。?IKVM安装:从上下载ikvm,解压缩后就能开始用。?将jar转换为dll:运行:ikvmc -target:library?××××.jar会将jar文件自动转换为?××××.dll但是,如果jar中引用的类不存在于××××.jar,也不存在于IKVM.GNU.Classpath.dll之中,则会给出警告信息,该类也不会转换。这时,需要引用缺少的类所在的dll,格式如下:ikvmc -target:library -reference:lib1.dll -reference:lib2.dll -reference:lib3.dll jar1.jar?jar的提取:jar可以用winrar打开,把你想要的目录或类解压缩。?把java class文件打包为jar:把目录压缩成zip格式,把后缀改成jar,OK。?例子:转换Geotools的main模块下面以Geotools的main模块为例,说明怎样将jar文件转换为IL文件。geotools是有10年历史的GIS中间件。其main模块有1000多个类,源代码文件大小合计9.74M。jar文件名为gt2-main.jar,2.34M.?步骤1:分析main模块依赖的类库,分析类库间的依赖关系?geotools-main依赖的类库有:?rt.jar――java的主要的libgeoapi.jar――OpenGIS一帮人定义的标准geoapijai_codec.jar, jai_core.jar,――Java 2D APIJTS-1.4.jar,――Java?拓扑套件,主要用于拓扑分析,可能依赖vecmath-1.3.jar――vector数学库xalan-2.5.1.jar――xml?转换libopengis-legacy-0.1.jar,――忘了干什么的,反正和gis有关units-0.01.jar――不知道是什么batik*.jar――SVG libmailapi-1.3.jar?步骤2:转换类库?先转换那些没依赖的库,比如vecmath-1.3.jar,......?运行:ikvmc -target:library vecmath-1.3.jar?结果:?Note: output file is vecmath-1.3.dllNote: automatically adding reference to f:\ikvm-\ikvm\bin\ikvm.gnu.classpath.dll?成功转换成vecmath-1.3.dll。?如果碰上了依赖的库没转换,比如运行:ikvmc -target:library jai_codec.jar?结果提示有些类找不到:?Note: output file is jai_codec.dllNote: automatically adding reference to f:\ikvm-\ikvm\bin\ikvm.gnu.classpath.dllWarning: class com.sun.image.codec.jpeg.JPEGCodec not foundWarning: class com.sun.image.codec.jpeg.JPEGEncodeParam not foundWarning: class com.sun.image.codec.jpeg.JPEGImageEncoder not foundWarning: class com.sun.image.codec.jpeg.JPEGDecodeParam not foundWarning: class com.sun.image.codec.jpeg.JPEGImageDecoder not foundWarning: class
您可能关注的文档
- 人教版英语模块四第五单元复习文档BOOK 4 Unit5.doc
- 电压频率交换器.doc
- 3dvr材质参数.doc
- B字母开头的高考词汇.ppt
- translate+ppt.ppt
- 新概念四Lesson 30.ppt
- ECN sample1.doc
- 稳压器简介.doc
- 对shp文件进行坐标系的添加和转换.docx
- 朱琳课件.pptx
- 2025至2030全球及中国订单管理软件行业细分市场及应用领域与趋势展望研究报告.docx
- 2025至2030国内液晶显示屏行业市场发展分析及竞争策略与投资发展报告.docx
- 2025至2030港口设备市场前景分析及细分市场及应用领域与趋势展望研究报告.docx
- 2025至2030量子加密通信行业发展现状及投资前景战略报告.docx
- 2025至2030中国音乐合成器行业运营态势与投资前景调查研究报告.docx
- 2025至2030中国液压行业市场发展现状及竞争格局与投资机会报告.docx
- 2025至2030中国异戊橡胶行业运营态势与投资前景调查研究报告.docx
- 2025至2030帕西肽行业市场占有率及有效策略与实施路径评估报告.docx
- 2025至2030全球及中国超收敛集成系统行业细分市场及应用领域与趋势展望研究报告.docx
- 2025至2030尖齿铣刀行业市场占有率及有效策略与实施路径评估报告.docx
最近下载
- 李商隐《锦瑟》PPT课件.pptx VIP
- 医院感染病例漏报率.pptx VIP
- 新疆生产建设兵团二中2026届化学高一第一学期期末综合测试试题含解析.doc VIP
- 【9.11】全国D类综合应用能力思维导图(完美版).docx VIP
- 新疆生产建设兵团二中2025届化学高一第一学期期末联考试题含解析.doc VIP
- 2025届新疆维吾尔自治区新疆生产建设兵团二中物理高一第一学期期末监测模拟试题含解析.doc VIP
- 全国D类职业能力倾向测验思维导图.docx VIP
- 短路及接地故障指示器使用说明书.PDF VIP
- 合格证模板打印可修改.docx VIP
- 乌鲁木齐市第一中学2024届高一数学第一学期期末学业质量监测试题含解析.doc VIP
原创力文档


文档评论(0)