我想把项目打成可执行jar包,可是执行的时候报错:
java.net.URISyntaxException: Expected scheme-specific part at index 5:...
抛出异常的位置是:
private static String detectWebRootPath() {
try {
String path = PathKit.class.getResource("/").toURI().getPath();
return new File(path).getParentFile().getParentFile().getCanonicalPath();
} catch (Exception e) {
throw new RuntimeException(e);
}
查找了一些网上资料说:
地址中涉及了特殊字符,如‘|’‘&’等。所以不能直接用String代替URI来访问。必须采用%0xXX方式来替代特殊字符。但这种办法不直观。所以只能先把String转成URL,再能过URL生成URI的方法来解决问题。
我也不知道是什么原因,求解~~~~~
项目:JFinal