Sto cercando di ottenere la posizione da cui viene eseguito un file JAR eseguibile. Ho provato a fareOttieni la posizione del file JAR
try {
String path = new java.io.File(".").getCanonicalPath();
} catch (IOException e) {
e.printStackTrace();
}
Ma che restituisce:
C:\Users\Kevin\Desktop/server/Server
mentre il file JAR si trova a
C:\Users\Kevin\Desktop
Ho anche provato a fare
return new file(Server.class.getProtectionDomain().getCodeSource().getLocation().getPath());
Ma che restituisce :
C:\Users\Kevin\Desktop\server.jar/server/Server
Quindi, in linea di massima, desidero il percorso del file JAR senza il nome file e non il ClassPath.
Qualsiasi modo per farlo?
Questa potrebbe essere utile, discussione permeabile. http://stackoverflow.com/questions/320542/how-to-get-the-path-of-a-running-jar-file // Henrik – Hiny
La specifica è incompleta. Cosa dovrebbe essere fatto se * non * stai correndo da un JAR? Cosa succede se il JAR vive in qualche rete? – Ingo
Beh, il fatto è che sto cercando di creare una directory contenente i file e che deve essere sul mio desktop o ovunque io stia eseguendo il JAR. Se lo eseguo in modalità di debug all'interno di Eclipse, crea i file nella cartella bin/server. – Snakybo