<%
GenModel genModel = parameter;
targetPath = genModel.getEditorPluginDirectory();
packageName = genModel.getEditorPluginPackageName();
className = genModel.getEditorEntryPointClassName();
%>