Android Studio è diventato l'IDE per eccellenza nello sviluppo di app per Android.

Utilizza gradle per gestire le dipendenze, ed inizialmente non lo trovo di facile approccio; ad esempio nell'aggiunta di librerie esterne.

Oggi vediamo come eseguire questa operazione in due modi distinti.

Una volta finito di creare un programma in Java usando Maven, ho provato a lanciarlo fuori dall'IDE ed ho riscontrato un problema con le dipendenze:

java.lang.NoClassDefFoundError: org/apache/tika/exception/TikaException

Classico problema perchè il Manifest non trova le librerie richieste dal programma.

In sostanza bisogna modificare il Manifest per includere la directory con le librerie.

La pratica di includere le librerie dentro JAR, non è una pratica che mi piace molto.

Però ci sono dei casi in cui può risultare comodo, se non obbligatorio.

Se usiamo Maven, è molto facile eseguire questa operazione, usando un plugin apposito: maven-assembly-plugin.

Oggi vi posto una classe di utilità per Java.

Ad oggi ci sono solo due metodi; uno dei metodi, serve per identificare il path del JAR corrente; è una versione diversa da quella creata qua.

In futuro spero di implementarla, e sono ben accetti suggerimenti ovviamente!

Capita che le nostre applicazioni abbiamo dei file che servono al programma stesso.

In genere questi files si mettono o nella home dell'utente, o nella directory del Jar che lanciamo.

Vediamo appunto come identificare la directory del Jar principale.

Come mi è stato specificato nel forum di HTML.it, non dobbiamo preoccuparci se stiamo sotto Linux, Mac o Windows; sarà la JVM a tradurre i sepatatori di percorso (gli slash) in bakslash quando lanciamo il programma sotto Windows.