ciao a tutti!

Ho creato un programma che richiama alcuni file esterni e che deve creare alcune cartelle all'interno della cartella del programma.
mi spiego meglio la struttura del programma è questa:

Cartella programma
-- file jar dell'applicazione
-- cartella lib
-- cartella risorse

per sapere il percorso della cartella da cui viene avviato il programma utlizzo il comando:

System.getProperty("user.dir")

In Windows tutto funziona correttamente ma sotto linux il comando mi restituisce sempre la cartella home dell'utente.
Come posso fare per sapere il percorso?
non posso usare i percorsi relativi (/nuova cartella) per dovendo creare nuove cartelle devo aver bisogno del percorso completo.

aiuto!