2009-08-20 31 views

Trả lời

1

các lớp này là cái gì? Nếu chúng là để thử nghiệm, bạn có thể chỉ định chúng trong src/test/java, sau đó chúng sẽ được biên dịch thành các lớp đích/thử nghiệm trong giai đoạn biên dịch thử nghiệm, nhưng sẽ không được bao gồm trong cuộc chiến cuối cùng.

Nếu chúng không phải để thử nghiệm và không được đưa vào chiến tranh, có lẽ chúng nên được tái cấu trúc vào một dự án khác để bạn có thể chỉ định nó như một phụ thuộc (có lẽ với phạm vi "được cung cấp" được triển khai

để tham khảo bạn có thể cấu hình chiến tranh để bao gồm và không bao gồm nguồn khi đóng gói

Ví dụ sau đây sẽ bao gồm tất cả jpgs nhưng không bao gồm các nguồn lực từ các thư mục image2 phụ:..

<configuration> 
     <webResources> 
     <resource> 
      <!-- this is relative to the pom.xml directory --> 
      <directory>resource2</directory> 
      <!-- the list has a default value of ** --> 
      <includes> 
      <include>**/*.jpg</include> 
      <includes> 
      <excludes> 
      <exclude>**/image2</exclude> 
      </excludes> 
     </resource> 
     </webResources> 
    </configuration> 

Xem war plugin documentation để biết thêm chi tiết.

+1

Các lớp được biên dịch các lớp bên ứng dụng GWT không cần phải trên máy chủ, nhưng cần phải được biên dịch vào/target/classes để chạy, biên dịch và chạy GWT hoạt động đúng cách. – kebernet

+0

Họ cần phải trên con đường của bạn chắc chắn, nhưng bạn không thể di chuyển chúng vào một dự án jar và thêm rằng như là một "phụ thuộc" phạm vi phụ thuộc vào chiến tranh? –

+1

Tôi có thể, tôi chỉ hy vọng không làm điều đó. Nó làm cho quay lên một trình duyệt chế độ lưu trữ một quá trình nhiều bước. – kebernet

0

Bạn có thể có may mắn với điều này, giả sử bạn chúng trong một gói phần mềm mà bạn có thể xác định với một mô hình kiến ​​

<plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-war-plugin</artifactId> 
     <version>2.0.2</version> 
     <configuration> 
       <excludes>**/dontneed/*.class</excludes> 
     </configuration> 
    </plugin> 
+0

Điều này không hiệu quả. Các lớp vẫn được thêm vào. –

+0

công trình, nhưng chỉ dành cho chiến tranh: chiến tranh, không phải vì chiến tranh: phát nổ. http://jira.codehaus.org/browse/MWAR-264 –

+0

Nó đã hoạt động trở lại vào năm 2009! Tôi đoán một cái gì đó đã thay đổi. – sal

0

Với phiên bản hiện tại của maven-chiến-plugin (3.0.0) hoạt động này đối với tôi -

<profile> 
    <id>abc</id> 
    ... 
    <build> 
     <plugin> 
     <artifactId>maven-war-plugin</artifactId> 
     <version>3.0.0</version> 
     <configuration> 
      <packagingExcludes>WEB-INF/classes/com/abc/pqr/ClassName.class</packagingExcludes> 
     </configuration> 
     </plugin> 
    </build> 
</profile> 
Các vấn đề liên quan