不幸的是,虽然Java 社区似乎对多语言编程非常热衷,但IDE供应商并没有真正跟上.他们一般做有针对Java,Scala中,Clojure中,Groovy中,红宝石,ECMAScript中,Python和C++项目插件,但混合使用多种语言一个项目一般不支持.
例如,在Ruby中,通过JRuby将Swing用作GUI是很常见的.但是如果要使用Matisse,NetBeans Swing GUI构建器必须使用Java项目,则不能在Ruby项目中使用Matisse.但是,如果您使用Java项目,那么您不能拥有Ruby主可执行文件,您必须拥有Java主可执行文件.此外,您不会获得Rake支持以及Ruby项目类型支持的其他内容.(丑陋的解决方法是编写一个Java主要可执行文件,JRubyEngine手动创建一个实例,将Ruby主要可执行文件加载到其中并运行它.)
Eclipse Scala插件支持有限的多种语言,但是他们必须跳过的箍是巨大的.基本上,他们使用运行时字节码修补将Scala Aspects注入Java Development Tools Eclipse插件,以使类型驱动的跨语言重构工作.与AspectJ一样,Groovy插件做了类似的事情(事实上,他们最初提出了使用方面编织为JDT注入新功能的想法).因此,所有这些插件都允许使用自己和Java进行多语言编程.但不幸的是没有彼此.(尽管一些维护者表示有兴趣进行更密切的合作.)
总的来说,我担心唯一的解决方案是新的IDE.