2016-10-05 2 views
0
<!-- tag::wsdl[] --> 
<plugin> 
    <groupId>org.jvnet.jaxb2.maven2</groupId> 
    <artifactId>maven-jaxb2-plugin</artifactId> 
    <version>0.12.3</version> 
    <executions> 
     <execution> 
      <id>firstrun</id> 
      <phase>generate-sources</phase> 
      <goals> 
       <goal>generate</goal> 
      </goals> 
      <configuration> 
       <schemaLanguage>WSDL</schemaLanguage> 
       <generatePackage>my.package.osb.services.wsdl1</generatePackage> 
       <schemas> 
        <schema> 
         <url>http://x.x.x.x:8002/wsdl1?wsdl</url> 
        </schema> 
       </schemas> 
      </configuration> 
     </execution> 
     <execution> 
      <id>secondrun</id> 
      <phase>generate-sources</phase> 
      <goals> 
       <goal>generate</goal> 
      </goals> 
      <configuration> 
      <schemaLanguage>WSDL</schemaLanguage> 
      <generatePackage>my.package.osb.services.wsdl2</generatePackage> 
      <schemas> 
       <schema> 
        <url>http://x.x.x.x:8002/wsdl2?wsdl</url> 
       </schema> 
      </schemas> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 
<!-- end::wsdl[] --> 

나의 이해는 위의 두 개의 서로 다른 패키지에 두 개의 URL에 설명 된 POJO를 생성해야한다는 것입니다 받는다는 - JAXB2 - 플러그인 소스를 생성합니다.여러 WSDL URL을

왜 작동하지 않는지 나는 이해할 수 없다. 내가 mvn jaxb2:generate 후 점점 오전 오류가 No schemas to compile. Skipping XJC execution.

하나가 제대로 만 WSDL의 URL을이 작업을 수행하는 방법에 대한 완벽한 솔루션을 제공하시기 바랍니다 수있다?

+1

미래에 같은 나쁜 질문을 피하기 위해 downvote에 주석을다는 것이 도움이 될 것입니다. – idipous

+0

전체'mvn -X clean install'을 게시하십시오. 그렇지 않으면 구성이 정상적으로 보입니다. 여기에 테스트 프로젝트 중 하나가 있습니다. 아마'0.13.1'로 업그레이드하려고 시도 할 것입니다. – lexicore

답변

0

mvn jaxb2:generate을 실행하면 maven은 실행 중에 configuration을 사용하지 않습니다.

이미 실행을 바인딩해야하는 phase을 선언 했으므로 mvn generate-sources을 실행하십시오.

https://maven.apache.org/guides/mini/guide-configuring-plugins.html#Using_the_executions_Tag는 말한다 :

참고 : <executions> 태그 내부 구성이 그 그들이 직접 명령 행 호출에서 사용할 수없는 외부 <executions>있는 것과 다릅니다. 대신 바인딩 된 라이프 사이클 단계가 호출 될 때만 적용됩니다. 또는 실행 섹션 외부에서 구성 섹션을 이동하면 해당 플러그인의 모든 호출에 전역 적으로 적용됩니다.

+0

'mvn generate-sources'를 주면 아무 일도 일어나지 않습니다. – idipous

+0

이것은 또 다른 문제가 될 것입니다 ... 실행이 생명주기 페이즈에 바인딩되어 있다면 그것은 maven에 의해 실행되어야합니다. 모든 로그? –

+0

도움이되는 정보가 없습니다. 나는 또 다른 플러그인에 의지했고 그것은 효과가 있었다. 오류는 내가 플러그인 관리자에서 전체 플러그인 해독을 받았을 수도 있습니다. 왜냐하면 다른 플러그인이 작동하는 데 필요한 것이기 때문입니다. 위의 구성으로 테스트하고 질문을 업데이트합니다. – idipous