首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何选择Java网桥?

如何选择Java网桥?
EN

Stack Overflow用户
提问于 2010-08-23 12:41:56
回答 5查看 19K关注 0票数 25

我必须创建一个自动化Outlook和Word的应用程序,并且我想使用Java来完成这个任务。(唯一允许的选择是VB6,所以.)

经过Google的快速调查,我找到了几个库,但我不确定该使用哪个库:

  • 互调
  • SWT
  • 雅各布
  • COM4J
  • jacoZoom
  • ..。

我不知道如何比较这些图书馆并作出明智的决定。看起来COM4J有点过时了,雅各布泄露了内存(据称),而jacoZoom则是商业化的。每个方法似乎都需要大量的样板代码来执行简单的方法调用。(考虑到COM的设计,这可能是不可避免的)

此外,我不知道如何在其中一个选择。哪一个是最好的?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-08-24 09:35:32

我们在生产环境中使用Jacob,效果很好。然而,这些项目似乎并不十分积极。

说到这一点:活动似乎是J的一个优势。我们也尝试过这个项目,而且它似乎与更好的日志记录消息的效果相当好。我想我们可以为新项目选择J-Interop。

COM4J似乎过时了,你说得对。

票数 8
EN

Stack Overflow用户

发布于 2015-08-12 16:05:59

作为一名熟悉Java/Linux但对Windows一无所知的开发人员,我的经验(2015年8月).

执行摘要:

  1. com4j一起去..。但请注意:
  2. 您可能需要构建最新的(未发布的)代码,以获得一些重要的最近修复。

更长的故事:

一开始,涉及JNI的代码会莫名其妙地崩溃,这让我寻找一种非JNI解决方案。互调似乎符合这一要求。

然而,当我试图使j-interop工作时,所有的Windows权限和注册表垃圾都使它成为一个完全的PITA。这是不同版本的Windows,所需的更改必须作为管理员,等等。我不明白任何Windows垃圾,它让我想吐无论如何。

然后我试了一下com4j,它像个冠军一样工作。这个项目设计得很好。它会自动从您使用的DLL中生成Java接口。COM调用约定细节是使用接口方法上的Java注释来声明的,允许您在必要时调整这些细节(在我的例子中不需要调整)。

github上有几个开发人员已经分叉了这个项目并提供了修复,这是一个健康的迹象。

唯一要注意的是,您可能需要一些最近的修补程序,这些修补程序在2015年8月被合并到项目中,但不包含在最新版本(2014年3月)中。

因此,您可能需要自己进行自定义构建,包括在Visual中构建DLL,等等。即使作为一个讨厌Windows /无知的人,我也能够做到这一点。

票数 5
EN

Stack Overflow用户

发布于 2012-07-26 15:35:19

COM4J似乎仍然是活跃的--它已经被移到Github,并有了一个新的主页:http://com4j.kohsuke.org/tutorial.html

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3547587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档