2011-12-05 52 views
13

Tôi đang làm việc trên một dự án đa mô-đun. Chúng tôi đang sử dụng appCtx.xml từ một mô-đun trong vài mô-đun khác.Sao chép tệp từ một dự án này sang một dự án khác trong maven

Vấn đề hiện tại là chúng không phải lúc nào cũng đồng bộ với nhau.

Điều này xảy ra khi ai đó sửa đổi tệp và xây dựng dự án, người thực hiện việc đó có thể quên sao chép sang mô-đun khác và gây ra sự cố.

Làm cách nào để sao chép appCtx.xml bên trong src/main/resources từ dự án A sang src/main/resources trong dự án B?

+0

Bạn có thể thêm phụ thuộc trực tiếp không? – Gray

+1

Một ý tưởng khác là sử dụng hệ thống kiểm soát sửa đổi của bạn để trợ giúp. Tôi không biết nếu bạn sử dụng SVN nhưng xem: http://stackoverflow.com/questions/1401951/is-it-possible-to-link-svn-repository-files-so-that-a-file-is- thực sự-a-referen – Gray

Trả lời

35

Bạn có thể làm điều này với maven resources plugin: copy-resources, một cái gì đó như:

<plugin> 
    <artifactId>maven-resources-plugin</artifactId> 
    <executions> 
     <execution> 
      <id>copy-appCtx</id> 
      <phase>generate-resources</phase> 
      <goals> 
       <goal>copy-resources</goal> 
      </goals> 
      <configuration> 
       <outputDirectory>${project.build.directory}/src/blahhere</outputDirectory> 
       <overwrite>true</overwrite> 
       <resources> 
        <resource> 
         <directory>../other_project/src/blah/blah</directory> 
         <includes> 
          <include>appCtx.xml</include> 
         </includes> 
        </resource> 
       </resources> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 

bản này một tập tin từ một dự án (colocated trên cây cùng một nguồn) như là một phần của giai đoạn tạo ra nguồn tổng hợp. Bạn có thể điều chỉnh điều này theo nhu cầu của bạn.

Việc sao chép từ dự án này sang dự án khác có thể gây dựng không ổn định nếu dự án không được xây dựng cùng một lúc, nhưng ở trên sẽ hoạt động cho các dự án luôn được xây dựng cùng nhau.

+1

Tôi đang tìm kiếm nó! cảm ơn –

Các vấn đề liên quan