2014-02-24 2 views
2

저는 다중 모듈 프로젝트 (모델, 서비스, 유틸리티, webapp)를 가지고 있습니다. webapp 프로젝트의 pom.xml에 정의 된 몇 가지 프로필이 있습니다.모듈 프로젝트의 리소스 필터링

<profile> 
     <id>Dev</id> 
     <properties> 
      <db.driverClass>..</db.driverClass> 
      <db.connectionURL>..</db.connectionURL> 
      <db.username>..</db.username> 
      <db.password>..</db.password> 
      <pathFile>myFolder/myFirstPath/</pathFile> 
     </properties> 
    </profile> 

    <profile> 
     <id>Prod</id> 
     <properties> 
      <db.driverClass>..</db.driverClass> 
      <db.connectionURL>..</db.connectionURL> 
      <db.username>..</db.username> 
      <db.password>..</db.password> 
      <pathFile>myFolder/mySecondPath/</pathFile> 
     </properties> 
    </profile> 

내 유틸리티 프로젝트에있는 속성 경로를 동적으로 변경하려고합니다. 이 내가

<resources> 
    <resource> 
     <directory>src/main/resources</directory> 
     <filtering>true</filtering> 
    </resource> 
</resources> 

필터링 자원을 활성화 UTIL 프로젝트의 pom.xml 파일에서 내 모듈 프로젝트

|-- parent 
`-- pom.xml 
    |-- model 
    | `-- pom.xml 
    |-- util 
     |--src 
      |--main 
       |--resources 
        |--props 
         props.properties 
    | `-- pom.xml 
    |-- webapp 
    ` -- pom.xml 

의 골격입니다 그리고 마지막으로 내가 쓴

pathToChange = $ {pathFile}

in the props.properties 파일. 내가

MVN 부두를 실행할 때 : -P 데브

을 실행

pathToChange 속성 값은 변경되지 않습니다. 어디에서 잘못 했습니까?

+1

속성을 변경했는지 여부를 확인하기 만하면 대상 디렉토리를 확인하고 있습니까? 그리고 변화가 없다고 말할 때 어떤 가치가 있습니까? –

+0

값은 동일하게 유지됩니다. pathToChange = $ {pathFile} – Skizzo

답변

2

잘못된 프로젝트에서 프로필을 정의했습니다. 너는 util 대신에 webapp에 있습니다. 이 프로젝트 속성은 부모 pom이 아닌 경우 정의 된 프로젝트에만 관련됩니다. 한 POM에 정의 된 속성은 다른 POM에서는 사용할 수 없습니다.

+1

동의합니다. 프로필을 상위 폴더로 이동하십시오. – pasha701

관련 문제