2011-12-07 40 views
9

Tôi nhận thấy rằng câu hỏi này là khá nhiều câu hỏi chính xác được tìm thấy here. Tuy nhiên, khi câu hỏi đó là 1,5 tuổi (hoặc lâu hơn), tôi muốn xem lại nó. Làm thế nào để thêm một phụ thuộc địa phương bằng cách sử dụng leiningen? Chắc chắn khả năng này phải tồn tại ngay bây giờ?Làm thế nào để sử dụng leiningen để phát triển bằng cách sử dụng bình địa phương?

Trả lời

8

Create a private Maven Repository, và sau đó, thêm dòng sau vào bạn project.clj

:repositories {"local" ~(str (.toURI (java.io.File. "your_local_repository")))} 
+0

Tuyệt vời, cảm ơn. Btw, tôi chỉ làm điều này: ': repositories {" local ""/my/string/path "}' và nó hoạt động tốt. – benekastah

+3

Nhưng, nhà phát triển khác, người đã sao chép dự án của bạn cần phải thay đổi đường dẫn! –

+0

Ah, đúng vậy. Cảm ơn! – benekastah

7

Nếu lọ được dựa trên dự án của riêng bạn, bạn có thể sử dụng lein install để đặt chúng vào .m2 địa phương của bạn, hoặc sử dụng các checkout- tính năng phụ thuộc.

Bạn cũng có thể sử dụng ngoại classpaths tính năng vv

2

tôi thấy rằng dễ nhất (mặc dù hơi hacky) giải pháp là phải làm như sau:

Đối với một dự án hiện rằng bạn đang sử dụng như một sự phụ thuộc:

  1. trong dự án địa phương của bạn có sự phụ thuộc bạn muốn thay đổi, đảm bảo bạn chạy lein deps
  2. Clone repo của sự phụ thuộc này để bạn có thể sửa đổi nó tại địa phương (o bv. đảm bảo bạn đang sử dụng cùng một thẻ với phiên bản bạn chỉ định trong tệp project.clj của mình)
  3. Chạy lein uberjar trong thư mục phụ thuộc này (nơi tệp liên quan đến dự án.clj)
  4. Sao chép bình độc lập được tạo trong mục tiêu/vào đường dẫn/tệp chính xác của các tệp maven cục bộ của bạn ... (giống như: ~/.m2/repository/project /.../ file.jar); Đảm bảo rằng bạn sao lưu các tập tin jar gốc để bạn có thể khôi phục lại nó sau này nếu đó là mong muốn

Đối với sự phát triển của dự án của riêng bạn:

  1. Trong dự án hoặc cắm bạn đang phát triển, chỉ cần chạy lein install
  2. Tìm ra nơi maven repo địa phương của bạn là (xem ở trên cho một con đường chẳng hạn)
  3. Nhập phụ thuộc thông tin trong dự án thử nghiệm của bạn như bạn sẽ cho bất kỳ dự án leiningen khác

Một lần nữa, đây là một hack nhanh chóng và có lẽ không phải là cách bạn muốn đi về phát triển địa phương nghiêm trọng, nhưng tôi thấy nó dễ dàng đủ cho những gì tôi muốn. Hãy xem lein help tutorial để biết thêm thông tin

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