2016-11-02 3 views
0

Я хочу развить идею intellij plugin так же, как «Maven Helper». Я должен получить объект «MavenProject», прежде чем я смогу выполнить некоторую логику. Но я обнаружил, что MavenProjectsManager имеет значение null (я использую его в проекте maven). Мог ли кто-нибудь дать мне какой-нибудь дев-гид об этом? Благодаря!MavenActionUtil.getMavenProject (e.getDataContext()) является нулевым при разработке плагина intellij

public void actionPerformed(AnActionEvent e) { 
    Project project = e.getData(PlatformDataKeys.PROJECT); 
    VirtualFile file = e.getData(PlatformDataKeys.VIRTUAL_FILE); 

    if (file == null || project == null) { 
     return; 
    } 
    String fileName = file.getName(); 

    if (!fileName.endsWith(POM_XML)) { 
     return; 
    } 

    final MavenProjectsManager projectsManager = MavenProjectsManager.getInstance(project); 
} 

ответ

0

Пожалуйста, убедитесь, что вы добавили банки с плагином Maven путь к классам вашего IntelliJ IDEA SDK, а не как отдельную библиотеку. Выполнение последнего приведет к загрузке двух копий классов плагина Maven, что приведет к проблеме, которую вы описываете.

+0

Спасибо! Я решил это с вашей помощью. Я предполагаю, что если вы хотите получить «MavenProject» или другую информацию «Maven» в плагинах, вам нужно сделать две вещи. - добавьте «maven.jar» и «maven-server-api.jar» в свой SDK Intellij IDEA, - добавьте в зависимости от « org.jetbrains.idea.maven» к вашему plugin.xml. Я думаю, правильно? – David

+0

Да, это правильно – yole

 Смежные вопросы

  • Нет связанных вопросов^_^