2012-04-18 19 views
8

Tôi đang di chuyển từ Ant/Ivy sang Gradle và đang cố gắng hiểu cách bạn chỉ định đường dẫn tương đối cho đại lý Ivy địa phương. Standalone Ivy đặt biến số ${ivy.default.ivy.user.dir} theo mặc định thành .ivy2 trong thư mục chính của người dùng và đặt repo cục bộ tại đó.Làm thế nào để xác định một đường dẫn tương đối đến địa phương Ivy repo trong Gradle?

tôi có thể mô phỏng này như sau:

repositories { 
    ivy { 
     url "C:/Users/RYAN/.ivy2/local" 
     layout 'pattern', { 
      artifact "[organisation]/[module]/[revision]/[artifact](-[classifier])-[revision](.[ext])" 
      ivy "[organisation]/[module]/[revision]/[artifact](-[classifier])-[revision](.[ext])" 
    } 
} 

Nhưng tôi không muốn chỉ định một đường dẫn tuyệt đối. Tôi thấy có một biến môi trường GRADLE_USER_HOME, nhưng Gradle không thiết lập nó theo mặc định - Tôi phải chỉ định dòng lệnh.

Gradle có cung cấp cách truy cập địa chỉ Ivy repo địa phương mặc định không?

Trả lời

11

Làm thế nào về việc sử dụng:

url "${System.properties['user.home']}/.ivy2/local" 
+0

Cảm ơn, mà không làm việc. Tôi vẫn muốn truy cập/sử dụng một số thuộc tính Ivy _default_, nhưng điều này sẽ làm việc để tránh đường dẫn tuyệt đối. –

+0

Tôi không nghĩ Gradle có lối tắt như vậy ... (ví dụ như mavenCentral() repo one) ... Bạn luôn có thể yêu cầu tính năng này trên diễn đàn Gradle. – vicsz

+0

Tùy chọn ... bạn luôn có thể đảm bảo rằng thuộc tính hệ thống ivy.default.ivy.user.dir được đặt .. và sử dụng nó để thay thế 'user.home' trong ví dụ của tôi. – vicsz

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