Arquivo de referência do Java Desktop.open (Arquivo f) dentro do JAR?

É possível paraDesktop.open(File f) fazer referência a um arquivo localizado em um JAR?

Eu tentei usarClassLoader.getResource(String s), convertendo-o em um URI e criando um arquivo a partir dele. Mas isso resulta emIllegalArgumentException: URI is not hierarchical.

URL url = ClassLoader.getSystemClassLoader().getResource(...);
System.out.println("url=" + url);    // url is valid
Desktop.getDesktop().open(new File(url.toURI()));

Uma possibilidade éa resposta em JavaRanch, que é criar um arquivo temporário do recurso dentro do JAR - não muito elegante.

Isso está sendo executado no Windows XP.