输出的结果是`/D:/Coding/Project/plugin-tool-bench/build/classes/java/main/`不是我预期的`D:/Coding/Project/plugin-tool-bench/build/classes/`
时间: 2023-08-03 14:09:11 浏览: 172
在获取 JAR 文件所在目录时,你可以使用以下代码来获取预期的结果:
```java
String jarPath = YourClassName.class.getProtectionDomain().getCodeSource().getLocation().getPath();
String decodedPath = URLDecoder.decode(jarPath, "UTF-8");
String jarDirectory = new File(decodedPath).getParentFile().getParent();
System.out.println(jarDirectory);
```
这段代码中,我们使用`URLDecoder.decode()`方法对路径进行解码,确保以正确的格式获取路径。然后,我们使用`getParentFile()`两次来获取 JAR 文件所在的目录。最后,我们将目录打印出来或进行其他操作。
请注意,这段代码同样假设你想获取当前 JAR 文件所在的目录。如果你想获取其他 JAR 文件的目录,你需要替换`YourClassName`为相应的类名。
阅读全文
相关推荐


















