maven multimodule problem
Here is a sample project with 1 parent module and 2 submodules (core and db4o).
parent module declares all dependency version in dependency management.
core module is handled correctly by idea (all libraries are found and module definition is correctly updated).
but db4o module seems to trigger an error in maven integration or embedder and no libraries are added.
Removing the dependency between the two submodules allows idea to populate libraries correctly.
I removed all the sources to make the download small, has anyone an idea what's going wrong ?
Furthermore, importing in module groups seems to mess up idea, exceptions get thrown like the following one.
Funny thing, is IDEA advices to "blame IDEA Jad" (I tried disabling this plugin but then another one is blamed, InspectionGadgets for example)
Assertion failed:
java.lang.Throwable
at com.intellij.openapi.diagnostic.Logger.assertTrue(Logger.java:89)
at com.intellij.openapi.diagnostic.Logger.assertTrue(Logger.java:96)
at org.jetbrains.idea.maven.project.MavenToIdeaConverter$3.visit(MavenToIdeaConverter.java:93)
at org.jetbrains.idea.maven.project.MavenToIdeaConverter$3.visit(MavenToIdeaConverter.java:97)
at org.jetbrains.idea.maven.core.util.Tree.visit(Tree.java:54)
at org.jetbrains.idea.maven.core.util.Tree.visit(Tree.java:74)
at org.jetbrains.idea.maven.project.MavenProjectModel.visit(MavenProjectModel.java:172)
at org.jetbrains.idea.maven.project.MavenToIdeaConverter.createModuleGroups(MavenToIdeaConverter.java:83)
at org.jetbrains.idea.maven.project.MavenToIdeaConverter.convert(MavenToIdeaConverter.java:45)
at org.jetbrains.idea.maven.project.MavenImportProcessor$3.run(MavenImportProcessor.java:151)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:174)
at org.jetbrains.idea.maven.project.MavenImportProcessor.commit(MavenImportProcessor.java:149)
at org.jetbrains.idea.maven.project.action.MavenImportWizard.commitImport(MavenImportWizard.java:82)
at com.intellij.projectImport.ProjectImportWizard.doImport(ProjectImportWizard.java:15)
at com.intellij.projectImport.ProjectImportAction.actionPerformed(ProjectImportAction.java:7)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:3)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:49)
at com.intellij.ui.plaf.beg.BegMenuItemUI.a(BegMenuItemUI.java:176)
at com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:235)
at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:0)
at java.awt.Component.processMouseEvent(Component.java:5501)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
at java.awt.Component.processEvent(Component.java:5266)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3968)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1778)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at com.intellij.ide.IdeEventQueue.c(IdeEventQueue.java:123)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:29)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:25)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
java.lang.NullPointerException: null keys not supported
at gnu.trove.THashMap.put(THashMap.java:162)
at com.intellij.openapi.module.impl.ModuleManagerImpl$ModuleModelImpl.setModuleGroupPath(ModuleManagerImpl.java:4)
at org.jetbrains.idea.maven.project.MavenToIdeaConverter$3.visit(MavenToIdeaConverter.java:94)
at org.jetbrains.idea.maven.project.MavenToIdeaConverter$3.visit(MavenToIdeaConverter.java:97)
at org.jetbrains.idea.maven.core.util.Tree.visit(Tree.java:54)
at org.jetbrains.idea.maven.core.util.Tree.visit(Tree.java:74)
at org.jetbrains.idea.maven.project.MavenProjectModel.visit(MavenProjectModel.java:172)
at org.jetbrains.idea.maven.project.MavenToIdeaConverter.createModuleGroups(MavenToIdeaConverter.java:83)
at org.jetbrains.idea.maven.project.MavenToIdeaConverter.convert(MavenToIdeaConverter.java:45)
at org.jetbrains.idea.maven.project.MavenImportProcessor$3.run(MavenImportProcessor.java:151)
at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:174)
at org.jetbrains.idea.maven.project.MavenImportProcessor.commit(MavenImportProcessor.java:149)
at org.jetbrains.idea.maven.project.action.MavenImportWizard.commitImport(MavenImportWizard.java:82)
at com.intellij.projectImport.ProjectImportWizard.doImport(ProjectImportWizard.java:15)
at com.intellij.projectImport.ProjectImportAction.actionPerformed(ProjectImportAction.java:7)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:3)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:49)
at com.intellij.ui.plaf.beg.BegMenuItemUI.a(BegMenuItemUI.java:176)
at com.intellij.ui.plaf.beg.BegMenuItemUI.access$300(BegMenuItemUI.java:235)
at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:0)
at java.awt.Component.processMouseEvent(Component.java:5501)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
at java.awt.Component.processEvent(Component.java:5266)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3968)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1778)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at com.intellij.ide.IdeEventQueue.c(IdeEventQueue.java:123)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:29)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:25)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Attachment(s):
newsleecher.zip
Please sign in to leave a comment.
I forgot to mention that maven (either external or goals triggered from inside IDEA) works with this project
Thibaut wrote:
No answer to the problem but I'm also seeing oddness with maven
multi-module projects at the moment :(
created a JIRA http://www.jetbrains.net/jira/browse/IDEA-13294
Hello Thibaut,
I know what caused the problem, but not sure how soon I can fix it.
As a workaround, try running "mvn install" for your project prior to opening
it in IDEA. I am almost sure this should help.
Best regards,
Vladislav Kaznacheev
Project Manager, IntelliJ IDEA
http://www.jetbrains.com
"Develop with Pleasure!"
But this won't allow create a module dependency right ?
Maybe you could have a look at how mavenreloaded handled this, it did it well.
http://code.google.com/p/mavenreloaded/
No, the module dependencies will be created all right.
An of course I am doing this the same way as Maven Reloaded does, only with
newer version of Maven Embedder.
Vladislav Kaznacheev
Project Manager, IntelliJ IDEA
http://www.jetbrains.com
"Develop with Pleasure!"
seems to work , this will work as a work around, thanks :)