2010-09-25 20 views

risposta

24

Nella finestra IntelliJ Idea del progetto, è possibile accedere a File >> Struttura del progetto >> Librerie. Dopo aver fatto clic sull'opzione Librerie, verranno visualizzati due riquadri. Nella parte superiore del riquadro a sinistra, fai clic sul pulsante verde "+".

+5

Questo non sembra funzionare nella versione 13.1.5. Aggiungo il file .jar. E funziona bene fino alla prossima volta che riavvio IntellJ, o se modifico il file build.sbt. Quindi, "scompare". – chaotic3quilibrium

+0

Idem. lo stesso per me –

6

In IntelliJ IDEA:

  • File> Struttura del progetto> Biblioteche

in NetBeans:

  • File> Proprietà progetto> Biblioteche

In Eclipse:

  • clic destro del progetto> Proprietà> Java Build Path> Biblioteche
+0

L'aggiunta dei file jar nel build.sbt è un'opzione migliore, penso. – Daniel

9

Il modo migliore per farlo è quello di aggiungere le dipendenze non gestite al build.sbt ed evitare di lasciare parte della vostra gestione delle dipendenze a cavalchi.

Consultare http://www.scala-sbt.org/release/docs/Library-Management.html per dettagli su come definire le attività non gestite e non gestite.

+0

la cartella lib viene automaticamente aggiunta a unmanagedJars, è supportata da IDEA? – Edmondo1984

+0

Sì, Idea cerca le librerie annotate in UnmanagedJars e fa correttamente la navigazione/evidenziazione. Se intendi le build, Idea usa Sbt stesso (in bundle o esterno) per creare progetti Sbt, quindi non devono fare nulla in più per supportarlo. – mcyalcin

5

Proprio Annunziate questo build.sbt

unmanagedJars in Compile += file(Path.userHome+"/Your-Jar-Path/Full-Jar-Name.jar") 

e apparirà vaso richiesto nella libreria esterna> unmanaged-giare> Full-Jar-Name.jar. Questo cambierà anche se il file jar (nel percorso fornito) viene modificato.

0

Per un progetto SBT multi-modulo (Intellij 2017.3.4, Scala 12.2.4, sbt 1.1.1), la soluzione accettata ha funzionato solo fino al riavvio o un aggiornamento del progetto. Infatti, "Impostazioni progetto-> Moduli -> Dipendenze", quindi "+" e "JAR o directory" danno un avvertimento "Il modulo X viene importato da Sbt. Eventuali modifiche apportate nella sua configurazione potrebbero andare perse dopo la reimportazione".

possibile soluzione:
Il suggerimento da @zero ha lavorato per me come segue:

  1. Mettere il JAR (s) nella directory del progetto lib.
  2. In build.sbt, all'interno di lazy var baseSettings = Seq(...) aggiungere la riga unmanagedJars in Compile += file("YourPath/ProjectBla/lib/controlsfx-8.40.14.jar").
  3. Ancora senza fortuna?Nella finestra SBT strumento, in impostazioni SBT di un modulo sotto unmanagedBase, unmanagedSourceDirectories (e simili) provare a chiamare i comandi a comparsa "Mostra valore" e "ispezionare" un paio di volte. In qualche modo, potrebbe funzionare.

    Dalla risposta di Eugene Yokota a How can I add unmanaged JARs in sbt-assembly to the final fat JAR? un'altra opzione (che non ho provato) è aggiungere una singola directory lib a ciascun modulo richiesto.

Eventualmente, questi passaggi risolveranno il problema o almeno aiuteranno il debug.

Problemi correlati