К сожалению, в то время как сообщество Java , похоже, с большим энтузиазмом относится к программированию полиглота, поставщики IDE на самом деле не справились. Они вообще do имеют плагины для Java, Scala, Clojure, Groovy, Ruby, ECMAScript, Python, C++ проектов, но смешивание несколько языков в один проект вообще не поддерживается.
В Ruby, например, довольно часто используется Swing в качестве графического интерфейса через JRuby. Но если вы хотите использовать Matisse, построитель GUI NetBeans Swing, вы должны использовать Java-проект, вы не можете использовать Matisse в проекте Ruby. Однако, если вы используете проект Java, тогда у вас не может быть основного исполняемого файла Ruby, у вас должен быть главный исполняемый файл Java. Кроме того, вы не получаете поддержку Rake и другие вещи, которые поддерживает тип проекта Ruby. (Уродливый обходной путь, чтобы написать основной исполняемый файл Java, который создает JRubyEngine
экземпляр вручную, загружает Рубина основных исполняемые в нее и запускает его.)
Затмения Scala плагина поддерживает ограниченное количество polyglotism, но обручи, которые они должны прыгать, огромны. В основном, они используют исправление байт-кода во время выполнения, чтобы внедрять Scala Aspects в плагин Java Development Tools Eclipse, чтобы работать с перекрестными рефакторингами на основе типов. Плагин Groovy делает аналогичные вещи, как и AspectJ (на самом деле, они изначально придумали идею использования аксессуаров для вставки новых функций в JDT). Таким образом, все эти плагины позволяют программировать многоугольник с собой и с Java. Но, к сожалению, не друг с другом. (Хотя некоторые из сопровождающих выразили заинтересованность в более тесном сотрудничестве.)
В общем, я боюсь, что единственным решением являются новые IDE.
Кто-нибудь знает, где IntelliJ стоит на этом? – jomohke
Да! Пожалуйста, см. Мой ответ на вопрос. –