2014-06-07 24 views
9

Tôi đang phát triển plugin cho IntelliJ IDEA. Cách tôi đang đi về điều này là bằng cách tạo ra một dự án plugin trong IDEA, sau đó đóng gói này vào một cái lọ với thích hợp META-INF/plugin.xml, và cài đặt các plugin từ jar.Làm cách nào để chỉ định phụ thuộc thư viện cho plugin IntelliJ IDEA?

Vấn đề là tôi muốn thêm phụ thuộc vào org.scala-lang:scala-library:2.11.0. Tôi có điều này được chỉ định như là một phụ thuộc thư viện trong dự án IDEA, nhưng thông tin này dường như không bao giờ được chuyển cho JAR được tạo ra.

Làm cách nào để bao gồm thông tin này theo cách mà IntelliJ IDEA sẽ nhận ra?

+0

Ý anh là gì bởi "thông tin này không bao giờ dường như được truyền cho JAR được tạo ra "? Bạn đang nhìn cái gì vậy? Bạn đang gặp phải lỗi gì? –

+0

Cấu trúc [tài liệu của lọ chứa plugin] (http://confluence.jetbrains.com/display/IDEADEV/IntelliJ+IDEA+Plugin+Structure) không cung cấp bất kỳ cách nào để chỉ định phụ thuộc thư viện trong jar. Tôi hy vọng rằng có một số cách khác để làm điều đó (có thể một cái gì đó thông minh liên quan đến một sự phụ thuộc plugin). – Owen

+0

Bạn đang sử dụng maven? –

Trả lời

5

Theo như tôi hiểu, bạn muốn nhóm một số thư viện (ví dụ: thư viện scala) với plugin của bạn. Điều này khá đơn giản.

  1. Chuyển đến Cài đặt dự án, chọn mô-đun và chuyển đến tab Phụ thuộc. Đặt phạm vi cho thư viện bạn muốn nhóm thành 'Biên dịch'. Trong ví dụ này, thư viện 'khung kiểm tra'. thư viện 'groovy-2.3.6' sẽ không được nhóm do phạm vi của nó được đặt thành 'Đã cung cấp'. Lưu thay đổi.

    Module dependencies tab

  2. Chuẩn bị plugin cho triển khai

    Prepare plugins for deployment action

  3. Sau đó, bạn có plugin, nén, sẵn sàng cho việc triển khai (tải lên repo hoặc cài đặt tại địa phương) trong thư mục gốc của dự án. Nó sẽ chứa một thư mục lib với tất cả các lọ cần thiết.

0

Các hỗ trợ chính thức giải pháp quản lý phụ thuộc plugin là sử dụng Gradle với gradle-intellij-plugin, qua dependencies hoặc intellij.plugins điểm vào Gradle của. Nếu bạn muốn thêm một sự phụ thuộc vào một artifact (. Cũ được lưu trữ trên Maven Trung ương), sau đó cấu hình dependencies cũng giống như bạn bình thường trong một dự án Gradle dựa trên:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
} 

dependencies { 
    compile("org.scala-lang:scala-library:2.11.0") 
} 

Các điểm vào intellij.plugins sẽ thêm một artifact trong dự án hiện tại, cũng như thẻ <depends> vào tệp plugin.xml của bạn. Để cài đặt một plugin bên ngoài cùng của riêng bạn, ví dụ nếu bạn đang sử dụng Plugin Extensions tính năng (giả sử các plugin được lưu trữ trên JetBrains Plugin Repository), sử dụng đoạn mã sau:

plugins { 
    id "org.jetbrains.intellij" version "0.2.13" 
} 

intellij { 
    //... 
    plugins "org.intellij.scala:2017.2.638" 
} 
Các vấn đề liên quan