2011-09-06 5 views
1

이슈가 저장소에 아직 설치되지 않은 경우에만 빌드를 실행하고 싶습니다. 내 생각은 기본적으로 비활성 상태 인 프로필을 사용하지만 이슈가없는 경우 활성화됩니다. Maven 속성을 프로필 활성화에 사용할 수 없기 때문에 지금까지 성공하지 못했습니다.Maven : localRepository 속성에 따른 프로필 활성화? Maven에서

Settings.XML의 :

... 
<localRepository>/local/m2repo</localRepository> 
... 

1)이 작동 :

의 pom.xml은 :

... 
<profile> 
    <id>my-profile</id> 
    <activation> 
     <activeByDefault>false</activeByDefault> 
     <file> 
      <missing>/local/m2repo/something</missing> 
     </file> 
    </activation> 
    ... 
</profile> 

2)이 작동하지 않습니다

의 pom.xml :

... 
<profile> 
    <id>my-profile</id> 
    <activation> 
     <activeByDefault>false</activeByDefault> 
     <file> 
      <missing>${settings.localRepository}/something</missing> 
     </file> 
    </activation> 
    ... 
</profile> 
,

3)이 중 하나가 작동하지 않습니다

Settings.XML의 :

... 
<properties> 
    <local.repository>${settings.localRepository}</local.repository> 
</properties> 
... 

의 pom.xml : 어떻게 든 해결 방법이나 내가 확인하는 방법을 대안

<profile> 
    <id>my-profile</id> 
    <activation> 
     <activeByDefault>false</activeByDefault> 
     <file> 
      <missing>${local.repository}/something</missing> 
     </file> 
    </activation> 
</profile> 

있는가 내 인공물의 존재와 필요한 경우에만 빌드를 실행? 아이디어를 제공해 주셔서 감사합니다!

답변

0

당신은 그렇게 할 수 없습니다.

활성화 파일 위치는 일반적으로 현재 프로젝트 폴더를 기준으로합니다.

프로필은 프로필이 이미 정의되고 빌드가 시작된 후에 만 ​​계산됩니다.