2013-06-27 25 views
7

Tôi muốn sử dụng plugin arquillian đây để chạy cầu cảng 8+:Cách thích hợp để cài đặt/chạy một plugin gradle từ github (đặc biệt là plugin arquilian)?

https://github.com/aslakknutsen/arquillian-gradle-plugin

Nếu tôi đặt "áp dụng plugin: 'arquillian'" trong kịch bản gradle của tôi, nó không tìm thấy nó.

Vì vậy, tôi phải cài đặt nó bằng cách nào đó. Tôi tìm kiếm thông tin về điều này, nhưng không tìm thấy.

Bạn có con trỏ về cách thực hiện điều đó không?

Tôi đang sử dụng gradle 1,6 trên cửa sổ.


Cập nhật sau câu trả lời bằng @raeffs: tôi cập nhật các kịch bản gradle với nó và xây dựng là thành công, nhưng tôi không nhìn thấy chiến tranh của tôi bắt đầu sau khi một arquillianRunJetty (cổng 8080 thậm chí không được lắng nghe) .

Sau đó, tôi cố gắng thêm những gì được thể hiện trên trang github:

arquillian { 
    debug = true 
    deployable = file('my/path/arbitraryWebApp.war') 

    containers { 
     jetty { 
      version = '8' 
      type = 'embedded' 
      config = ['bindHttpPort': 8080, 'bindAddress': '127.0.0.1', 'jettyPlus': false] 

      dependencies { 
       adapter 'org.jboss.arquillian.container:arquillian-jetty-embedded-7:1.0.0.CR2' 
       container 'org.eclipse.jetty:jetty-webapp:8.1.11.v20130520' 
       container group: 'org.eclipse.jetty', name: 'jetty-plus', version: '8.1.11.v20130520' 
      } 
     } 

tôi đã phải thay arquillian-cầu cảng-nhúng-7: 1.0.0.CR2 với CR1 vì nó không có trong maven trung tâm .

Sau đó, tôi đặt con đường vào cuộc chiến của mình. Khi bắt đầu lại, có nhiều cuộc trò chuyện hơn nhưng vẫn không nghe thấy trên cổng 8080.

Vì vậy, tôi vẫn nhớ điều gì đó.

Tôi cũng thấy khó xử khi phải tham chiếu với đường dẫn tuyệt đối cho cuộc chiến mà tôi đang xây dựng bằng kịch bản lệnh gradle. Tôi nghĩ rằng có thể có một loại tham chiếu tự.

Cập nhật Bây giờ nó chạy tốt nhờ @raeffs. Tôi thực sự không biết điều gì đã xảy ra trong bước trước.

Đường dẫn đến ứng dụng web có tên, cộng với phiên bản.

Cảm ơn bạn

Trả lời

12

Tác giả của plugin chưa xuất bản lên kho lưu trữ maven, do đó bạn phải tự xây dựng nó.

Nhận bản sao cục bộ của dự án plugin và xây dựng nó. Bạn sẽ nhận được một 'arquillian-gradle-plugin-0.1.jar' làm đầu ra.

Trong tập lệnh xây dựng của dự án riêng của bạn, bạn phải khai báo sự phụ thuộc vào bình đó. Thêm nội dung sau vào tập lệnh xây dựng của bạn:

buildscript { 
    dependencies { 
     classpath fileTree(dir: '/path/to/folder/that/contains/the/jar', 
      includes: ['arquillian-gradle-plugin-0.1.jar']) 
    } 
} 

Bây giờ bạn sẽ có thể sử dụng plugin.

Cập nhật

Nếu bạn không muốn cung cấp một đường dẫn cứng để có thể triển khai của bạn, bạn chỉ đơn giản là có thể vượt qua một biến.Ví dụ, nếu bạn đang sử dụng các plugin chiến tranh:

arquillian { 
    deployable = war.archivePath 
} 

Dưới đây là một ví dụ về việc sử dụng: https://gist.github.com/raeffs/5920562#file-build-gradle

Nó bắt đầu container cầu cảng, triển khai chiến tranh và chờ đợi cho đến khi ctrl + c được nhấn.

+0

Cảm ơn, bản dựng đã hoạt động nhưng chiến tranh của tôi vẫn chưa được triển khai - tôi đã cập nhật câu hỏi của mình nếu bạn muốn theo dõi. – unludo

+0

Tôi đã thử những gì bạn mô tả trong bản cập nhật của bạn và nó hoạt động. Tôi sẽ công bố mã của tôi trên github vào ngày mai. Có lẽ điều đó sẽ giúp bạn. Tôi cũng cập nhật câu trả lời của tôi để bạn không phải sử dụng đường dẫn tuyệt đối. – raeffs

+0

Cảm ơn rất nhiều, nó hoạt động tốt. Tôi đoán Jetty được cài đặt tự động, bạn có biết ở đâu (unfortunatelly tôi bị mắc kẹt với Windows và có khả năng tìm kiếm giới hạn trên hệ điều hành đó) – unludo

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