2010-12-07 4 views
0

Я использую инструмент какое-то время, и мне он так нравится, что я хотел бы использовать его как плагин eclipse. К сожалению, я думаю, что он написан на C++. Можно ли использовать такую ​​базу кода в качестве основы для плагина Eclipse без повторной записи ее на Java?Может ли использовать не-Java-код в плагине eclipse?

BTW: инструмент закрыт исходным кодом, коммерческий, обслуживается кем-то еще и должен использоваться в качестве виджета GUI. Я в основном задаюсь вопросом, может ли это быть вполне вероятно, что я мог бы поговорить с владельцами об этом.

ответ

1

Вы могли бы попытаться создать Java-обертки для кода C++ с использованием SWIG (или простой JNI, который является одним из основных PITA, хотя).

1

В целом, интеграция существующих собственных приложений и инструментов в Eclipse - основное усилие. Если вы хотите поговорить с сопровождающими в этом, вам придется убедить их, почему перенос на Eclipse был бы хорош для них.

Однако, если есть подходящий C++ API, вы можете делать много по своему усмотрению. Вы можете обернуть API с помощью SWIG или написать исполняемый файл обертки, который связывается с некоторыми из них для протокола сериализации, например Google Protobuf. Однако это не позаботится о интеграции пользовательского интерфейса в Eclipse, поэтому, если инструмент UI-тяжелый, это, вероятно, вам не поможет.

+0

UI тяжелый был бы немного преуменьшен: http://www.scootersoftware.com/ – BCS 2010-12-08 15:28:41

1

В зависимости от того, какой инструмент он есть, вы можете рассмотреть несколько других вариантов. Если это инструмент генерации кода или перевода, вам может понадобиться не что иное, как пользовательский построитель, который может вызывать инструмент как часть процесса сборки с выбранными вами параметрами и целями. Например, вы можете запускать сборку Visual Studio как часть компиляции Eclipse без проблем.

Или, если это графический инструмент, проверьте, является ли он COM-объектом, который можно «легко» обернуть в Java и, следовательно, в плагин Eclipse.

И, наконец, я хотел бы также проголосовать за SWIG. Этот материал действительно хорош и упрощает перенос C или C++ API в Java и генерирование тонны кода JNI для вас.