Похоже, проблема пути к классам. Убедитесь, что вы либо вложили код Google в банку своего плагина, либо сделали запись пути к классам в своем .hep файле. Я использую Scala в качестве своего предпочтительного языка и использую параметры повсюду, но я обязательно включаю среду выполнения scala в файл jar плагина. Также убедитесь, что реализовали остальные методы в этом интерфейсе. Как плагин, действие REAL плагина не происходит до тех пор, пока Rhapsody не вызовет метод RhpPluginInvokeItem () при его запуске через меню «Инструменты» внутри Rhapsody. Смотрите мой пример ниже:
public class Test extends RPUserPlugin{
IRPApplication rhp=null;
public static void main(String[] args) {
// no optionals in my example...
Test plugin = new Test();
IRPApplication app = RhapsodyAppServer.getActiveRhapsodyApplication();
if (app != null) {
plugin.RhpPluginInit(app);
plugin.RhpPluginInvokeItem();
} else System.out.println("No running Rhapsody application found.");
}
@Override
public void RhpPluginInit(IRPApplication rpyApplication) {
// Don't re-acquire the handle to the active application here, that gets
// handed to you in the parameter above (rpyApplication)
//IRPApplication rhp = RhapsodyAppServer.getActiveRhapsodyApplication();
rhp = rpyApplication;
// setup logic here...in preparation for RhpPluginInvokeItem() to be called.
}
@Override
public void RhpPluginInvokeItem() {
rhp.writeToOutputWindow("plugin","Invoking doSomething()...");
//doSomething();
}
// implement the rest of the overriden methods here...
}