2014-07-04 14 views
6

tôi khá mới để gradle, vì vậy có lẽ tôi đang hỏi cái gì đó khá dễ dàng ....Gradle: Sao chép tất cả phụ thuộc kiểm tra vào một tập tin zip

Tôi đang tìm kiếm một giải pháp để đặt tất cả phụ thuộc vào phạm vi testCompile vào tệp zip. Tôi đã kiểm tra http://forums.gradle.org/gradle/topics/how_do_i_make_a_zip_to_contain_dependency_artifacts nhưng điều này dường như chỉ hoạt động đối với các phụ thuộc thời gian chạy. Tôi cũng đã kiểm tra http://www.gradle.org/docs/current/userguide/working_with_files.html Chương 16.8, nhưng điều đó cũng không hoạt động.

Khi tôi truy cập qua configurations.testCompile.allArtifacts.files, mã zip của tôi luôn trống. Khi tôi truy cập qua số configurations.testCompile.allDependencies Tôi có thể thấy tất cả các thông tin chi tiết nhưng tôi thiếu đường dẫn của các phụ thuộc.

Thật khó tin tôi, rằng tôi là người duy nhất từng gặp vấn đề này vì tôi không tìm thấy giải pháp nào.

Bất kỳ trợ giúp nào được đánh giá cao!

Trả lời

8

này làm việc cho tôi: http://forums.gradle.org/gradle/topics/how_do_i_make_a_zip_to_contain_dependency_artifacts

Mẫu nhiệm vụ:

task zip2(dependsOn: 'testCompile', type: Zip) { 
    from configurations.testCompile.allArtifacts.files 
    from configurations.testCompile 
    archiveName project.name + "_test_"+ project.version 
} 

Sau đó chạy:

gradle test zip2 

tập tin Zip sẽ được tạo tại địa chỉ:

build\distributions 
+0

Cảm ơn, điều này cũng làm việc cho tôi. Mã ban đầu của tôi giống nhau, nhưng không phải là từ configure.testCompile. Nó làm gì? – gorefest

+0

Tôi không hiểu. Nó tạo ra một zip là tốt, nhưng việc đặt tên không được áp dụng. tên luôn luôn là project.name + "-" + project.version. Ngay cả thiết lập thuộc tính basename không gây ấn tượng với gradle – gorefest

+0

xin lỗi, lỗi của tôi, nên là "archiveName", tôi đã cập nhật câu trả lời của tôi, hãy chọn câu trả lời của tôi nếu bạn hài lòng với nó –

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