몇 개의 다중 모듈 메이븐 프로젝트가 있습니다. 그것은 자바 EE 애플리케이션, 그래서 그들 모두는 결국 하나의 EAR 파일로 이동하여 모든 의존성 관리가 3 번째 파티 종속성을 설명 특별한 별도의 POM,이 이유는 다음과 같습니다Maven 종속성 관리 및 IDE :`import` scope
<groupId>mygroup</groupId>
<artifactId>my-3rd-party-deps</artifactId>
<version>1.0.0</version>
<packaging>pom</packaging>
그것은 또한 수입 거기에 부모 POM AS JBoss는 의존성 관리 섹션의 :
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-parent</artifactId>
<version>7.1.3.Final</version>
<type>pom</type>
<scope>import</scope>
</dependency>
모든 프로젝트가 그것입니다 내가
<dependencyManagement>
<dependencies>
<dependency>
<groupId>mygroup</groupId>
<artifactId>my-3rd-party-deps</artifactId>
<version>1.0.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
모든 서브 모듈 j에 대해 설명 자신의 부모, 버전없이 종속성을 설명해야합니다.
명령 줄을 사용할 때 완벽하게 작동합니다. 모든 종속성 버전이 올바르게 해석되었습니다.
하지만 IDE에서 (IDEA, Eclipse 및 NetBeans를 시도했지만) 오류가 발생합니다.
IDEA
[ERROR] 'dependencies.dependency.version' for org.jboss.spec.javax.ejb:jboss-ejb-api_3.1_spec:jar is missing. @ line 63, column 29 less...
이클립스
For artifact {org.jboss.spec.javax.ejb:jboss-ejb-api_3.1_spec:null:jar}: The version cannot be empty. (org.apache.maven.plugins:maven-resources-plugin:2.6:resources:default-resources:process-resources)
org.jboss.spec.javax.ejb:jboss-ejb-api_3.1_spec
의 버전은 상위 POM 같이 보스에있다.
왜 이런 일이 발생하며이 문제를 IDE에서 오류없이 해결할 수 있습니까? 당신의 기지에서
프로젝트를 IDE로 가져 오는 방법은 무엇입니까? 내 생각 엔, 당신은 당신의 하위 모듈을 부모 pom에 모듈로 제공하고 IDE에만 부모 pom으로 가져와야한다고 생각합니다. – arghtype
맞습니다. IDE에서 상위 POM을 가져옵니다. 모든 하위 모듈은 IDE에서 자동으로 가져옵니다. – dds
이 오류를 재현했습니다 (단순한 경우). 나는 버전없이 의존성을 완전히 제거함으로써 오류를 제거 할 수 있었다. 코드는 여전히 컴파일 될 수 있습니다. 해볼 수 있니? – arghtype