Intellij 9 exploded webapps, jboss and JRebel Follow
IntelliJ forces me to name the artifact xxxxx.war although it's an exploded directory being created by IDEA.
Maven also produces xxxxx and xxxxx.war in the target directory. Hence I need to rename the exploded
dir to avoid a name collision.
Generating a rebel.xml in IDEA gives:
...
<classpath>
<dir name="/Users/nnn/Project/nnn-trunk/core-webapp/target/classes">
</dir>
</classpath>
...
Seems fine at first but the problem is. IDEA packages the classes into the exploded webapp.
This makes JRebel load the classes twice.
A possible fix:
<classpath fallback="default">
<dir name="${rebel.root}/core-webapp/target/core-webapp.war/WEB-INF/classes">
</dir>
</classpath>
This works for Intellij IDEA users of the project (yes the rebel.xml is checked into vcs), but not
for the poor souls using Eclipse i.e.
If IDEA didn't force me to use a .war extension I could point the exploded dir to the maven created
one.
Any ideas of a better solution?
/S
Please sign in to leave a comment.
It's not IntelliJ which forces you to use a .war extension, it's JBoss.
When deploying an artifact, JBoss uses the file extension to choose the
correct deployer bean. If you don't use a .war extension, then JBoss
doesn't know that you want to deploy a web application.
IntelliJ itself doesn't care about the extension, you could name your
exploded directory whatever you want. It just warns you about the fact
that you won't be able to deploy this to JBoss.
On 1/23/2010 5:43 PM, Sigmund Lundgren wrote:
>
>
>
>
>
>
>
>
>
>
--
Martin Fuhrer
Fuhrer Engineering AG
http://www.fuhrer.com
Yes, that's correct - what I mean was that there should be some way around that.
/S