2012-02-23 2 views
2

jaxws-maven-plugin의 wsgen을 사용하여 @WebService Java 클래스 (Java에서 시작)에서 웹 서비스 아티팩트를 생성합니다. 내 웹 서비스 클래스는 @EJB를 주입한다. 종속성으로 javaee-api 버전 6을 포함 시켰습니다.javaee-api 버전 6에 제공된 범위를 사용하면 Maven에서 wsgen이 실패합니다.

javaee-api 범위를 변경하기 전까지는 모든 것이 잘 동작하고있었습니다. 이 작업을 수행하지 않으면 javaee-api.jar 파일이 내 .war 파일에 포함되는데 원하지 않습니다.

제공된 기능을 사용하면 컴파일 오류가 발생하지 않습니다. Someone else noticed this이지만 메이븐에는 없습니다.

다음은 내 pom.xml의 관련 섹션입니다.

감사합니다.

<build> 
    <plugins> 
    <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>jaxws-maven-plugin</artifactId> 
     <version>1.12</version> 
     <executions> 
     <execution> 
      <goals> 
      <goal>wsgen</goal> 
      </goals> 
      <configuration> 
      <sei>com.co.report.reports.ws.server.ReportService</sei> 
      <genWsdl>false</genWsdl> 
      <keep>true</keep> 
      </configuration> 
     </execution> 
     </executions> 
    </plugin> 
    </plugins> 
</build> 
<dependencies> 
    <dependency> 
    <groupId>javax</groupId> 
    <artifactId>javaee-api</artifactId> 
    <version>6.0</version> 
    <!-- Setting <scope>provided</scope> causes compile failure --> 
    <scope>provided</scope> 
    </dependency> 

답변

1

플러그인 자체에 대한 종속성으로 javax : javaee-api : 6.0을 추가하십시오.

<dependencies> 태그를 <plugin> 태그 안에 추가 할 수 있습니다.

자세한 내용은 POM reference을 참조하십시오.

+0

해결했습니다. 하지만 과 함께 컴파일되지 않는 이유를 명확히 밝히지 않았지만, pom 의존성에서는을 제공했습니다. –

+0

내가 그렇게 할 때 javax.mail 패키지에 문제가있다 (포함되지 않았다). –

관련 문제