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
7 comments

I forgot to mention that maven (either external or goals triggered from inside IDEA) works with this project

0

Thibaut wrote:

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.


No answer to the problem but I'm also seeing oddness with maven
multi-module projects at the moment :(

0

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!"

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(MavenToI
deaConverter.java:93)
at
org.jetbrains.idea.maven.project.MavenToIdeaConverter$3.visit(MavenToI
deaConverter.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(MavenProjectM
odel.java:172)
at
org.jetbrains.idea.maven.project.MavenToIdeaConverter.createModuleGrou
ps(MavenToIdeaConverter.java:83)
at
org.jetbrains.idea.maven.project.MavenToIdeaConverter.convert(MavenToI
deaConverter.java:45)
at
org.jetbrains.idea.maven.project.MavenImportProcessor$3.run(MavenImpor
tProcessor.java:151)
at
com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(A
pplicationImpl.java:174)
at
org.jetbrains.idea.maven.project.MavenImportProcessor.commit(MavenImpo
rtProcessor.java:149)
at
org.jetbrains.idea.maven.project.action.MavenImportWizard.commitImport
(MavenImportWizard.java:82)
at
com.intellij.projectImport.ProjectImportWizard.doImport(ProjectImportW
izard.java:15)
at
com.intellij.projectImport.ProjectImportAction.actionPerformed(Project
ImportAction.java:7)
at
com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitte
r.actionPerformed(ActionMenuItem.java:3)
at
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:184
9)
at
com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerfor
med(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:2
35)
at
com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleas
ed(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(EventDispatchThr
ead.java:242)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThrea
d.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.set
ModuleGroupPath(ModuleManagerImpl.java:4)
at
org.jetbrains.idea.maven.project.MavenToIdeaConverter$3.visit(MavenToI
deaConverter.java:94)
at
org.jetbrains.idea.maven.project.MavenToIdeaConverter$3.visit(MavenToI
deaConverter.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(MavenProjectM
odel.java:172)
at
org.jetbrains.idea.maven.project.MavenToIdeaConverter.createModuleGrou
ps(MavenToIdeaConverter.java:83)
at
org.jetbrains.idea.maven.project.MavenToIdeaConverter.convert(MavenToI
deaConverter.java:45)
at
org.jetbrains.idea.maven.project.MavenImportProcessor$3.run(MavenImpor
tProcessor.java:151)
at
com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(A
pplicationImpl.java:174)
at
org.jetbrains.idea.maven.project.MavenImportProcessor.commit(MavenImpo
rtProcessor.java:149)
at
org.jetbrains.idea.maven.project.action.MavenImportWizard.commitImport
(MavenImportWizard.java:82)
at
com.intellij.projectImport.ProjectImportWizard.doImport(ProjectImportW
izard.java:15)
at
com.intellij.projectImport.ProjectImportAction.actionPerformed(Project
ImportAction.java:7)
at
com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitte
r.actionPerformed(ActionMenuItem.java:3)
at
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:184
9)
at
com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerfor
med(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:2
35)
at
com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleas
ed(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(EventDispatchThr
ead.java:242)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThrea
d.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)



0

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/

0

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!"

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/



0

seems to work , this will work as a work around, thanks :)

0

Please sign in to leave a comment.