2014-06-07 7 views
9

Sto sviluppando un plug-in per IntelliJ IDEA. Il modo in cui sto facendo questo è creando un progetto plug-in in IDEA, quindi confezionandolo in un jar con l'appropriato META-INF/plugin.xml e installando il plug-in dal jar.Come specificare le dipendenze della libreria per un plug-in IntelliJ IDEA?

Il problema è che vorrei aggiungere una dipendenza su org.scala-lang:scala-library:2.11.0. Ho specificato come dipendenza della libreria nel progetto IDEA, ma questa informazione non sembra mai essere passata al JAR generato.

Come posso includere queste informazioni in modo che IntelliJ IDEA lo riconosca?

+0

Che cosa si intende per ", queste informazioni non sembra essere passato lungo il JAR generato "? Cosa stai vedendo? Quali errori stai ottenendo? –

+0

La [struttura documentata del plugin jar] (http://confluence.jetbrains.com/display/IDEADEV/IntelliJ+IDEA+Plugin+Structure) non fornisce alcun modo per specificare una dipendenza della libreria nel jar. Spero che ci sia un altro modo per farlo (forse qualcosa di intelligente che coinvolge una dipendenza da plugin). – Owen

+0

Stai usando Maven? –

risposta

5

Per quanto ho capito, vuoi raggruppare alcune librerie (ad esempio scala libreria) con il tuo plugin. Questo è piuttosto semplice.

  1. Vai al progetto Impostazioni, selezionare il modulo e andare a scheda Dipendenze. Imposta l'ambito per la libreria che desideri raggruppare in "Compila". In questo esempio è la libreria 'checker-framework'. La libreria 'groovy-2.3.6' non verrà raggruppata per il suo ambito impostato su 'Fornito'. Salva I Cambiamenti.

    Module dependencies tab

  2. Preparare plug-in per la distribuzione

    Prepare plugins for deployment action

  3. Poi hai plug-in, con zip, pronto per la distribuzione (il caricamento di pronti contro termine o l'installazione in locale) nella root del progetto. Conterrà la cartella lib con tutti i barattoli necessari.

0

La soluzione di gestione delle dipendenze plug ufficialmente supportato è quello di utilizzare Gradle con il gradle-intellij-plugin, tramite dependencies oppure i punti di ingresso intellij.plugins di Gradle. Se si desidera aggiungere una dipendenza da un manufatto (. Es ospitato su Maven centrale), quindi configurare dependencies proprio come si farebbe normalmente in un progetto basato Gradle:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
} 

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

Il punto di ingresso intellij.plugins aggiungerà un manufatto in progetto corrente, nonché un tag <depends> sul tuo file plugin.xml. Per installare un plugin esterno a fianco il proprio, per esempio, se si utilizza la Plugin Extensions funzione (supponiamo che il plugin è ospitato sul JetBrains Plugin Repository), utilizzare il seguente frammento:

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

intellij { 
    //... 
    plugins "org.intellij.scala:2017.2.638" 
} 
Problemi correlati