{"action":"opened","issue":{"url":"https://api.github.com/repos/ensime/ensime-server/issues/1457","repository_url":"https://api.github.com/repos/ensime/ensime-server","labels_url":"https://api.github.com/repos/ensime/ensime-server/issues/1457/labels{/name}","comments_url":"https://api.github.com/repos/ensime/ensime-server/issues/1457/comments","events_url":"https://api.github.com/repos/ensime/ensime-server/issues/1457/events","html_url":"https://github.com/ensime/ensime-server/issues/1457","id":154892185,"number":1457,"title":"Ensime fails to boot if loading JAR files from paths containing URI-escaped-chars","user":{"login":"timcharper","id":183,"avatar_url":"https://avatars.githubusercontent.com/u/183?v=3","gravatar_id":"","url":"https://api.github.com/users/timcharper","html_url":"https://github.com/timcharper","followers_url":"https://api.github.com/users/timcharper/followers","following_url":"https://api.github.com/users/timcharper/following{/other_user}","gists_url":"https://api.github.com/users/timcharper/gists{/gist_id}","starred_url":"https://api.github.com/users/timcharper/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/timcharper/subscriptions","organizations_url":"https://api.github.com/users/timcharper/orgs","repos_url":"https://api.github.com/users/timcharper/repos","events_url":"https://api.github.com/users/timcharper/events{/privacy}","received_events_url":"https://api.github.com/users/timcharper/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-05-15T05:48:29Z","updated_at":"2016-05-15T05:48:29Z","closed_at":null,"body":"Coursier dependency management system will encode unsafe characters, such as `:`, by URI encoding the characters. These are being treated as characters that should be decoded when passed to apache-commons vfs2 `resolveFile`, resulting in the following error:\r\n\r\n```\r\nCaused by: org.apache.commons.vfs2.FileSystemException: Could not replicate \"file:///Users/timcharper/.coursier/cache/v1/http/artifactory.corporate.domain:8080/artifactory/libs-release/org/mortbay/jetty/jetty/6.1.26.cloudera.4/jetty-6.1.26.cloudera.4-sources.jar\" as it does not exist.\r\n    at org.apache.commons.vfs2.provider.AbstractFileSystem.replicateFile(AbstractFileSystem.java:418)\r\n    at org.apache.commons.vfs2.provider.zip.ZipFileSystem.<init>(ZipFileSystem.java:61)\r\n    at org.apache.commons.vfs2.provider.jar.JarFileSystem.<init>(JarFileSystem.java:50)\r\n    at org.apache.commons.vfs2.provider.jar.JarFileProvider.doCreateFileSystem(JarFileProvider.java:82)\r\n    at org.apache.commons.vfs2.provider.AbstractLayeredFileProvider.createFileSystem(AbstractLayeredFileProvider.java:89)\r\n    at org.apache.commons.vfs2.provider.AbstractLayeredFileProvider.findFile(AbstractLayeredFileProvider.java:63)\r\n    at org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:693)\r\n    at org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:649)\r\n    at org.apache.commons.vfs2.impl.DefaultFileSystemManager.resolveFile(DefaultFileSystemManager.java:605)\r\n    at org.ensime.vfs.package$RichVFS$$anonfun$vjar$extension0$1.apply(EnsimeVFS.scala:66)\r\n    at org.ensime.vfs.package$RichVFS$$anonfun$vjar$extension0$1.apply(EnsimeVFS.scala:66)\r\n    at org.ensime.vfs.package$RichVFS$.org$ensime$vfs$RichVFS$$withContext$extension(EnsimeVFS.scala:52)\r\n    ... 24 common frames omitted\r\n21:25:28.588 INFO  None Server - Shutdown complete\r\n```\r\n\r\n(the actual filename for which it should be searching is `/Users/timcharper/.coursier//cache/v1/http/artifactory.corporate.domain%3A8080/artifactory/libs-release/org/mortbay/jetty/jetty/6.1.26.cloudera.4/.jetty-6.1.26.cloudera.4-javadoc.jar.error`\r\n\r\n"}}