Kill plugin logos
[idea/community.git] / plugins / maven / src / main / resources / META-INF / plugin.xml
1 <idea-plugin>
2   <id>org.jetbrains.idea.maven</id>
3
4   <name>Maven Integration</name>
5   <description>Import Maven projects and execute Maven goals</description>
6   <vendor>JetBrains</vendor>
7
8   <extensionPoints>
9     <extensionPoint name="importer" interface="org.jetbrains.idea.maven.importing.MavenImporter"/>
10     <extensionPoint name="additional.importing.settings" interface="org.jetbrains.idea.maven.project.AdditionalMavenImportingSettings"/>
11     <extensionPoint name="archetypesProvider" interface="org.jetbrains.idea.maven.indices.MavenArchetypesProvider"/>
12   </extensionPoints>
13
14   <depends>com.intellij.properties</depends>
15   <depends optional="true" config-file="groovy-support.xml">org.intellij.groovy</depends>
16
17   <extensions defaultExtensionNs="com.intellij">
18     <fileTypeFactory implementation="org.jetbrains.idea.maven.utils.MavenFileTypeFactory"/>
19     <projectImportProvider implementation="org.jetbrains.idea.maven.wizards.MavenProjectImportProvider"/>
20     <projectOpenProcessor implementation="org.jetbrains.idea.maven.wizards.MavenProjectOpenProcessor"/>
21     <projectImportBuilder implementation="org.jetbrains.idea.maven.wizards.MavenProjectBuilder"/>
22     <moduleBuilder builderClass="org.jetbrains.idea.maven.wizards.MavenModuleBuilder"/>
23     <frameworkSupport implementation="org.jetbrains.idea.maven.wizards.MavenFrameworkSupportProvider"/>
24
25     <applicationService serviceImplementation="org.jetbrains.idea.maven.server.MavenServerManager"/>
26     <applicationService serviceImplementation="org.jetbrains.idea.maven.indices.MavenIndicesManager"/>
27     <applicationService serviceImplementation="org.jetbrains.idea.maven.services.MavenRepositoryServicesManager"/>
28
29     <projectConfigurable instance="org.jetbrains.idea.maven.utils.MavenSettings" order="last"/>
30
31     <stepsBeforeRunProvider implementation="org.jetbrains.idea.maven.tasks.MavenBeforeRunTasksProvider"/>
32     <keymapExtension implementation="org.jetbrains.idea.maven.tasks.MavenKeymapExtension"/>
33     <errorHandler implementation="com.intellij.diagnostic.ITNReporter"/>
34     <configurationType implementation="org.jetbrains.idea.maven.execution.MavenRunConfigurationType"/>
35     <configurationProducer implementation="org.jetbrains.idea.maven.execution.MavenConfigurationProducer"/>
36     <orderEnumerationHandlerFactory implementation="org.jetbrains.idea.maven.execution.MavenOrderEnumeratorHandler$FactoryImpl"/>
37
38     <compiler implementation="org.jetbrains.idea.maven.compiler.MavenResourceCompiler" order="last"/>
39
40     <languageInjector implementation="org.jetbrains.idea.maven.plugins.sql.MavenSqlInjector"/>
41
42     <selectInTarget implementation="org.jetbrains.idea.maven.navigator.SelectInMavenNavigatorTarget"/>
43
44     <iconProvider implementation="org.jetbrains.idea.maven.utils.MavenIconProvider"/>
45     <editorTabTitleProvider implementation="org.jetbrains.idea.maven.utils.MavenEditorTabTitleProvider"/>
46
47     <problemFileHighlightFilter implementation="org.jetbrains.idea.maven.utils.MavenProblemFileHighlighter"/>
48
49     <attachSourcesProvider implementation="org.jetbrains.idea.maven.utils.MavenAttachSourcesProvider"/>
50
51     <liveTemplateContext implementation="org.jetbrains.idea.maven.utils.MavenLiveTemplateContextType"/>
52     <defaultLiveTemplatesProvider implementation="org.jetbrains.idea.maven.utils.MavenLiveTemplatesProvider"/>
53
54     <xml.elementDescriptorProvider implementation="org.jetbrains.idea.maven.dom.MavenDomElementDescriptorProvider"/>
55     <dom.fileDescription implementation="org.jetbrains.idea.maven.dom.MavenDomProjectModelDescription"/>
56     <dom.fileDescription implementation="org.jetbrains.idea.maven.dom.MavenDomProfilesModelDescription"/>
57     <dom.fileDescription implementation="org.jetbrains.idea.maven.dom.MavenDomOldProfilesModelDescription"/>
58     <dom.fileDescription implementation="org.jetbrains.idea.maven.dom.MavenDomSettingsModelDescription"/>
59     <dom.fileDescription implementation="org.jetbrains.idea.maven.dom.MavenDomPluginModelDescription"/>
60
61     <lang.documentationProvider language="XML" implementationClass="org.jetbrains.idea.maven.dom.MavenModelDocumentationProvider"
62                                 order="first"/>
63     <lang.documentationProvider language="XML" implementationClass="org.jetbrains.idea.maven.dom.MavenPluginModelDocumentationProvider"
64                                 order="first"/>
65     <elementDescriptionProvider implementation="org.jetbrains.idea.maven.dom.MavenModelDocumentationProvider" order="first"/>
66
67     <localInspection language="XML" shortName="MavenModelInspection" bundle="MavenDomBundle" key="inspection.name" groupKey="inspection.group"
68                      enabledByDefault="true" level="ERROR"
69                      implementationClass="org.jetbrains.idea.maven.dom.inspections.MavenModelInspection"/>
70     <localInspection language="XML" shortName="MavenDuplicateDependenciesInspection" bundle="MavenDomBundle" key="inspection.duplicate.dependencies.name"
71                      groupKey="inspection.group" enabledByDefault="true" level="WARNING"
72                      implementationClass="org.jetbrains.idea.maven.dom.inspections.MavenDuplicateDependenciesInspection"/>
73
74     <dom.extender domClass="org.jetbrains.idea.maven.dom.model.MavenDomConfiguration"
75                   extenderClass="org.jetbrains.idea.maven.dom.MavenPluginConfigurationDomExtender"/>
76     <dom.extender domClass="org.jetbrains.idea.maven.dom.model.MavenDomConfigurationParameter"
77                   extenderClass="org.jetbrains.idea.maven.dom.MavenPluginConfigurationParameterDomExtender"/>
78
79     <completion.contributor language="any"
80                             implementationClass="org.jetbrains.idea.maven.dom.references.MavenPropertyCompletionContributor"
81                             id="Maven"/>
82     <completion.contributor language="XML"
83                             implementationClass="org.jetbrains.idea.maven.dom.model.completion.MavenSmartCompletionContributor"/>
84
85     <psi.referenceContributor implementation="org.jetbrains.idea.maven.dom.references.MavenPropertyPsiReferenceContributor"/>
86     <usageTargetProvider implementation="org.jetbrains.idea.maven.dom.references.MavenUsageTargetProvider"/>
87
88     <renameHandler implementation="org.jetbrains.idea.maven.dom.refactorings.MavenPropertyRenameHandler" order="first"/>
89     <vetoRenameCondition implementation="org.jetbrains.idea.maven.dom.refactorings.MavenVetoModelRenameCondition"/>
90
91     <standardResourceProvider implementation="org.jetbrains.idea.maven.dom.MavenSchemaProvider"/>
92
93     <projectService serviceImplementation="org.jetbrains.idea.maven.dom.MavenDomElementDescriptorHolder"/>
94     <applicationService serviceImplementation="org.jetbrains.idea.maven.dom.converters.MavenDomConvertersRegistry"/>
95     <applicationService serviceImplementation="org.jetbrains.idea.maven.dom.converters.repositories.MavenRepositoriesProvider"/>
96
97     <typedHandler implementation="org.jetbrains.idea.maven.dom.code.MavenTypedHandlerDelegate"/>
98     <library.type implementation="org.jetbrains.idea.maven.utils.library.RepositoryLibraryType"/>
99     <backspaceHandlerDelegate implementation="org.jetbrains.idea.maven.dom.code.MavenBackspaceHandlerDelegate"/>
100
101     <intentionAction>
102       <className>org.jetbrains.idea.maven.dom.intentions.ChooseFileIntentionAction</className>
103     </intentionAction>
104
105     <problemHighlightFilter implementation="org.jetbrains.idea.maven.utils.ArchetypeResourceHighlightFilter" />
106
107     <codeInsight.unresolvedReferenceQuickFixProvider
108         implementation="org.jetbrains.idea.maven.dom.intentions.ResolveReferenceQuickFixProvider"/>
109
110     <gotoFileContributor implementation="org.jetbrains.idea.maven.utils.MavenGotoFileContributor"/>
111     <gotoFileContributor implementation="org.jetbrains.idea.maven.utils.MavenGotoSettingsFileContributor"/>
112     <gotoFileContributor implementation="org.jetbrains.idea.maven.vfs.MavenGotoPropertyFileContributor"/>
113     <fileTemplateGroup implementation="org.jetbrains.idea.maven.utils.MavenFileTemplateGroupFactory"/>
114
115     <annotator language="XML" implementationClass="org.jetbrains.idea.maven.dom.annotator.MavenDomGutterAnnotator"/>
116     <virtualFileSystem key="maven-properties" implementationClass="org.jetbrains.idea.maven.vfs.MavenPropertiesVirtualFileSystem"/>
117
118     <projectService serviceImplementation="org.jetbrains.idea.maven.project.MavenWorkspaceSettingsComponent"/>
119     <projectService serviceImplementation="org.jetbrains.idea.maven.execution.MavenRunner"/>
120   </extensions>
121
122   <application-components>
123     <component>
124       <implementation-class>org.jetbrains.idea.maven.utils.MavenEnvironmentRegistrar</implementation-class>
125     </component>
126   </application-components>
127
128   <project-components>
129     <component>
130       <implementation-class>org.jetbrains.idea.maven.project.MavenProjectsManager</implementation-class>
131       <loadForDefaultProject/>
132     </component>
133     <component>
134       <implementation-class>org.jetbrains.idea.maven.indices.MavenProjectIndicesManager</implementation-class>
135     </component>
136     <component>
137       <implementation-class>org.jetbrains.idea.maven.navigator.MavenProjectsNavigator</implementation-class>
138     </component>
139     <component>
140       <implementation-class>org.jetbrains.idea.maven.tasks.MavenTasksManager</implementation-class>
141     </component>
142     <component>
143       <implementation-class>org.jetbrains.idea.maven.tasks.MavenShortcutsManager</implementation-class>
144     </component>
145     <component>
146       <implementation-class>org.jetbrains.idea.maven.utils.MavenEditorTabTitleUpdater</implementation-class>
147     </component>
148     <component>
149       <implementation-class>org.jetbrains.idea.maven.utils.MavenImportNotifier</implementation-class>
150     </component>
151     <component>
152       <implementation-class>org.jetbrains.idea.maven.utils.MavenRehighlighter</implementation-class>
153     </component>
154   </project-components>
155
156   <actions>
157     <action id="Maven.Reimport" class="org.jetbrains.idea.maven.project.actions.ReimportAction"
158             text="Reimport All Maven Projects"
159             icon="AllIcons.Actions.Sync">
160     </action>
161
162     <action id="Maven.ReimportProject" class="org.jetbrains.idea.maven.project.actions.ReimportProjectAction"
163             text="Reimport" description="Reimport selected Maven projects"
164             icon="AllIcons.Actions.Sync">
165     </action>
166
167     <action id="Maven.UpdateFolders" class="org.jetbrains.idea.maven.project.actions.UpdateFoldersAction"
168             text="Generate Sources and Update Folders For All Projects"
169             icon="MavenIcons.UpdateFolders">
170     </action>
171
172     <action id="Maven.UpdateFoldersForProject" class="org.jetbrains.idea.maven.project.actions.UpdateFoldersForProjectAction"
173             text="Generate Sources and Update Folders"
174             icon="MavenIcons.UpdateFolders">
175     </action>
176
177     <action id="Maven.DownloadAllSources" class="org.jetbrains.idea.maven.project.actions.DownloadAllSourcesAction"
178             text="Download Sources" description="Download sources for all dependencies"
179             icon="MavenIcons.Download">
180     </action>
181
182     <action id="Maven.DownloadAllDocs" class="org.jetbrains.idea.maven.project.actions.DownloadAllDocsAction"
183             text="Download Documentation" description="Download documentation for all dependencies"
184             icon="MavenIcons.Download">
185     </action>
186
187     <action id="Maven.DownloadAllSourcesAndDocs" class="org.jetbrains.idea.maven.project.actions.DownloadAllSourcesAndDocsAction"
188             text="Download Sources and Documentation" description="Download sources and documentation for all dependencies"
189             icon="MavenIcons.Download">
190     </action>
191
192     <action id="Maven.DownloadSelectedSourcesAndDocs" class="org.jetbrains.idea.maven.project.actions.DownloadSelectedSourcesAndDocsAction"
193             text="Download Sources and Documentation"
194             description="Download sources and documentation for all dependencies for selected projects"
195             icon="MavenIcons.Download">
196     </action>
197
198     <action id="Maven.DownloadSelectedSources" class="org.jetbrains.idea.maven.project.actions.DownloadSelectedSourcesAction"
199             text="Download Sources" description="Download sources for all dependencies for selected projects"
200             icon="MavenIcons.Download">
201     </action>
202
203     <action id="Maven.DownloadSelectedDocs" class="org.jetbrains.idea.maven.project.actions.DownloadSelectedDocsAction"
204             text="Download Documentation" description="Download documentation for all dependencies for selected projects"
205             icon="MavenIcons.Download">
206     </action>
207
208     <action id="Maven.AddManagedFiles"
209             class="org.jetbrains.idea.maven.project.actions.AddManagedFilesAction"
210             text="Add Maven Projects"
211             description="Add and import Maven projects to the projects tree"
212             icon="AllIcons.General.Add">
213     </action>
214
215     <action id="Maven.AddFileAsMavenProject"
216             class="org.jetbrains.idea.maven.project.actions.AddFileAsMavenProjectAction"
217             text="Add as Maven Project"
218             description="Add and import Maven project to the projects tree"
219             icon="AllIcons.General.Add">
220       <add-to-group group-id="EditorPopupMenu" anchor="before" relative-to-action="Maven.GlobalProjectMenu"/>
221       <add-to-group group-id="ProjectViewPopupMenu" anchor="before" relative-to-action="Maven.GlobalProjectMenu"/>
222     </action>
223
224     <action id="Maven.RemoveManagedFiles"
225             class="org.jetbrains.idea.maven.project.actions.RemoveManagedFilesAction"
226             text="Remove Projects"
227             description="Remove selected Maven projects from the project tree"
228             icon="AllIcons.General.Remove">
229     </action>
230
231     <action id="Maven.OpenSettingsXml"
232             class="org.jetbrains.idea.maven.project.actions.OpenOrCreateSettingsXmlAction"
233             text="Open settings.xml"
234             description="Open Maven settings.xml"/>
235
236     <action id="Maven.OpenProfilesXml"
237             class="org.jetbrains.idea.maven.project.actions.OpenOrCreateProfilesXmlAction"
238             text="Open profiles.xml"
239             description="Open profiles.xml for selected projects"/>
240
241     <action id="Maven.IgnoreProjects"
242             class="org.jetbrains.idea.maven.project.actions.ToggleIgnoredProjectsAction"
243             text="_Ignore Projects"
244             description="Exclude/Include selected Maven projects from being imported">
245     </action>
246     <action id="Maven.ToggleProfile"
247             class="org.jetbrains.idea.maven.project.actions.ToggleProfileAction"
248             text="Toggle Profile"
249             description="Activate/deactivate profile">
250     </action>
251
252     <action id="Maven.RunBuild"
253             class="org.jetbrains.idea.maven.project.actions.RunBuildAction"
254             text="_Run Maven Build"
255             description="Execute selected phases or goals"
256             icon="AllIcons.Actions.Execute">
257     </action>
258
259     <action id="Maven.ShowSettings"
260             class="org.jetbrains.idea.maven.project.actions.EditSettingsAction" text="Maven Settings"
261             description="Edit Maven integration settings for the current project"
262             icon="AllIcons.Actions.ShowSettings">
263     </action>
264
265     <action id="Maven.ToggleOffline"
266             class="org.jetbrains.idea.maven.project.actions.ToggleOfflineAction" text="Toggle Offline Mode"
267             description="Toggle offline mode for Maven builds"
268             icon="MavenIcons.OfflineMode">
269     </action>
270
271     <action id="Maven.ToggleSkipTests"
272             class="org.jetbrains.idea.maven.project.actions.ToggleSkipTestsAction" text="Toggle 'Skip Tests' Mode"
273             description="Toggle 'Skip tests' mode for Maven builds"
274             icon="AllIcons.Nodes.ExceptionClass">
275     </action>
276
277     <action id="Maven.Help"
278             class="com.intellij.ide.actions.ContextHelpAction" text="Help"/>
279
280     <action id="Maven.ExpandAll" class="org.jetbrains.idea.maven.navigator.actions.MavenTreeAction$ExpandAll" text="Expand All"
281             icon="AllIcons.Actions.Expandall"
282             use-shortcut-of="ExpandAll"/>
283     <action id="Maven.CollapseAll" class="org.jetbrains.idea.maven.navigator.actions.MavenTreeAction$CollapseAll" text="Collapse All"
284             icon="AllIcons.Actions.Collapseall"
285             use-shortcut-of="CollapseAll"/>
286
287     <group id="Maven.TasksGroup">
288       <action id="Maven.BeforeCompile"
289               class="org.jetbrains.idea.maven.tasks.actions.ToggleBeforeCompileTasksAction" text="Execute Before Make"
290               description="Execute selected phase/goal before Make">
291       </action>
292       <action id="Maven.AfterCompile"
293               class="org.jetbrains.idea.maven.tasks.actions.ToggleAfterCompileTasksAction" text="Execute After Make"
294               description="Execute selected phase/goal after Make">
295       </action>
296       <action id="Maven.BeforeRun"
297               class="org.jetbrains.idea.maven.tasks.actions.ToggleBeforeRunTaskAction" text="Execute Before Run/Debug..."
298               description="Execute selected phase/goal before launching Run/Debug configuration">
299       </action>
300       <separator/>
301       <action id="Maven.AssignShortcut"
302               class="org.jetbrains.idea.maven.tasks.actions.AssignShortcutAction" text="Assign Shortcut..."
303               description="Assign shortcut to the selected phase/goal">
304       </action>
305     </group>
306
307     <group id="Maven.DownloadAllGroup" popup="true" class="org.jetbrains.idea.maven.project.actions.DownloadActionGroup"
308            icon="MavenIcons.Download">
309       <reference id="Maven.DownloadAllSources"/>
310       <reference id="Maven.DownloadAllDocs"/>
311       <reference id="Maven.DownloadAllSourcesAndDocs"/>
312     </group>
313
314     <group id="Maven.NavigatorActionsToolbar">
315       <reference id="Maven.Reimport"/>
316       <reference id="Maven.UpdateFolders"/>
317       <reference id="Maven.DownloadAllGroup"/>
318       <separator/>
319       <reference id="Maven.AddManagedFiles"/>
320       <separator/>
321       <reference id="Maven.RunBuild"/>
322       <reference id="Maven.ToggleOffline"/>
323       <reference id="Maven.ToggleSkipTests"/>
324       <reference id="Maven.CollapseAll"/>
325       <separator/>
326       <reference id="Maven.ShowSettings"/>
327       <reference id="Maven.Help"/>
328       <action id="Maven.GroupProjects"
329               class="org.jetbrains.idea.maven.navigator.actions.GroupProjectsAction"
330               text="Group Modules"
331               description="Group projects according to Maven structure"
332               secondary="true"
333               icon="AllIcons.Nodes.Folder"/>
334       <action id="Maven.ShowIgnored"
335               class="org.jetbrains.idea.maven.navigator.actions.ShowIgnoredProjectsAction"
336               text="Show Ignored Projects"
337               description="Show ignored projects"
338               secondary="true"
339               icon="AllIcons.Actions.ShowHiddens"/>
340       <action id="Maven.ShowBasicPhasesOnly"
341               class="org.jetbrains.idea.maven.navigator.actions.ShowBasicPhasesOnlyAction"
342               text="Show Basic Phases Only"
343               description="Show basic phases only"
344               secondary="true"
345               icon="MavenIcons.FilterPhases"/>
346     </group>
347
348     <group id="Maven.DependencyMenu">
349       <reference id="Maven.DownloadSelectedSources"/>
350       <reference id="Maven.DownloadSelectedDocs"/>
351       <reference id="Maven.DownloadSelectedSourcesAndDocs"/>
352     </group>
353
354     <group id="Maven.BaseProjectMenu">
355       <reference id="Maven.ReimportProject"/>
356       <reference id="Maven.UpdateFoldersForProject"/>
357       <separator/>
358       <reference id="Maven.IgnoreProjects"/>
359       <reference id="Maven.RemoveManagedFiles"/>
360       <separator/>
361       <reference id="Maven.OpenSettingsXml"/>
362       <reference id="Maven.OpenProfilesXml"/>
363       <separator/>
364       <reference ref="Maven.DependencyMenu"/>
365       <separator/>
366     </group>
367
368     <group id="Maven.NavigatorProjectMenu" popup="true">
369       <reference ref="Maven.BaseProjectMenu"/>
370       <separator/>
371       <reference id="Maven.RunBuild"/>
372       <reference ref="RunContextGroup"/>
373       <separator/>
374       <reference id="EditSource"/>
375     </group>
376
377     <group id="Maven.BuildMenu" popup="true">
378       <reference id="Maven.RunBuild"/>
379       <reference ref="RunContextGroup"/>
380       <separator/>
381       <reference ref="Maven.TasksGroup"/>
382     </group>
383
384     <group id="Maven.GlobalProjectMenu" class="org.jetbrains.idea.maven.utils.actions.MavenActionGroup" popup="true" text="Maven"
385            icon="MavenIcons.MavenLogo">
386       <add-to-group group-id="EditorPopupMenu" anchor="last"/>
387       <add-to-group group-id="ProjectViewPopupMenu" anchor="last"/>
388       <reference ref="Maven.BaseProjectMenu"/>
389     </group>
390
391     <action id="Maven.GenerateGroup" class="org.jetbrains.idea.maven.dom.generate.MavenGenerateDomActionGroup" text="Generate">
392       <add-to-group group-id="GenerateGroup" anchor="first"/>
393     </action>
394
395     <group id="Maven.RefactoringGroup" text="Refactoring">
396       <add-to-group group-id="IntroduceActionsGroup" anchor="after" relative-to-action="IntroduceParameter"/>
397       <separator/>
398       <action id="refactoring.introduce.property" text="Property"
399               class="org.jetbrains.idea.maven.dom.refactorings.introduce.IntroducePropertyAction"
400               use-shortcut-of="IntroduceVariable"/>
401
402       <action id="refactoring.extract.dependency" text="Extract Managed Dependency"
403               class="org.jetbrains.idea.maven.dom.refactorings.extract.ExtractManagedDependenciesAction"
404               use-shortcut-of="ExtractMethod"/>
405     </group>
406   </actions>
407 </idea-plugin>