Получить местоположение файла JAR

Я пытаюсь определить местоположение, из которого запускается файл JAR Runnable. Я пытался делать

try {
    String path = new java.io.File(".").getCanonicalPath();
} catch (IOException e) {
    e.printStackTrace();
}

Но это возвращает:

C:\Users\Kevin\Desktop/server/Server

в то время как файл JAR находится в

C:\Users\Kevin\Desktop

Я тоже пытался делать

return new file(Server.class.getProtectionDomain().getCodeSource().getLocation().getPath());

Но это возвращает:

C:\Users\Kevin\Desktop\server.jar/server/Server

Поэтому в основном я хочу путь к файлу JAR без имени файла, а не ClassPath.

Есть ли способ сделать это?

Ответы на вопрос(4)

Ваш ответ на вопрос