Maven ベースの 2 モジュール Intellij プロジェクトがあり、次のように編成されています。
MyAppProject
--->MyAppDomain (builds a JAR)
--->MyAppWAR (builds a WAR, including the JAR above)
Maven を使用してプロジェクトをビルドすると、結果の WAR に MyAppDomain.JAR が依存関係として含まれます。
<dependency>
<groupId>com.mycompany.myapp</groupId>
<artifactId>MyAppDomain</artifactId>
<version>1.0.0</version>
</dependency>
この WAR は Tomcat で動作します。ただし、Intellij Idea Ultimate の適切な Tomcat 統合を使用してビルドすると、WAR は次のエラーで失敗します (読みやすいようにフォーマットされています)。
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor#0':
Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'entityManagerFactory' defined in ServletContext resource [/WEB-INF/config/data-context.xml]:
Invocation of init method failed; nested exception is java.lang.IllegalStateException:
Conflicting persistence unit definitions for name 'caPersistenceUnit':
file:/C:/JavaSoftware/apache-tomcat-6.0.32/webapps/MyApplication/WEB-INF/lib/MyAppDomain.jar, file:/C:/JavaSoftware/apache-tomcat-6.0.32/webapps/MyApplication/WEB-INF/lib/MyAppDomain-1.0.0.jar
そのため、IDEA には Maven で指定された JAR (MyAppDomain-1.0.0.jar) が含まれており、すべて同じファイルを含むこの JAR (MyAppDomain.jar) の独自のバージョンも含まれているようです。
Intellij IDEA でこれをオフにする方法を無駄に検索しました。この動作を停止する方法を知っている人はいますか (共存プロジェクトを含む)?