Bonjour,
je souhaite accéder à des fichiers de ressources dans mon application d'abord dans eclipse puis à partir du jar executable
dans eclipse, avec le code :
j'obtiens
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 URL url_base = TestURL.class.getResource("/listecours.xsl"); System.out.println("url_base ->" + url_base.getPath()); File file_base = new File (url_base.getPath()); System.out.println("chemin de file base" + file_base.getAbsolutePath()); if (!(file_base.exists())) throw new Exception("pas bon");
pour forcer la recherche dans le jar, avec le code :
j'obtiens
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 URL url = new URL("jar:file:/D:/Users/Gilbert/java/AtelierMyosotis/AtelierMyosotis.jar!/listecours.xsl"); System.out.println("url 0 ->" + url.getPath()); URI uri = url.toURI(); System.out.println("uri path ->" + uri.getPath()); System.out.println("uri sheme ->" + uri.getSchemeSpecificPart()); String s = uri.getSchemeSpecificPart(); String protocol = url.getProtocol(); File f = new File(uri.getSchemeSpecificPart()); System.out.println("chemin de f ->" + f.getAbsolutePath()); if (!(f.exists())) throw new Exception("pas bon"); } catch (URISyntaxException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }
je ne vois pas ou est l'erreur : serait-ce un bug comme je crois l'avoir lu sur internet
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 url 0 ->file:/D:/Users/Gilbert/java/AtelierMyosotis/AtelierMyosotis.jar!/listecours.xsl uri path ->null uri sheme ->file:/D:/Users/Gilbert/java/AtelierMyosotis/AtelierMyosotis.jar!/listecours.xsl chemin de f ->D:\Users\Gilbert\java\workspace\AtelierMyosotis\AtelierMyosotisApplication\file:\D:\Users\Gilbert\java\AtelierMyosotis\AtelierMyosotis.jar!\listecours.xsl java.lang.Exception: pas bon at org.atelier.myosotis.application.TestURL.main(TestURL.java:36)
pour l'instant je contourne le problème en référençant les fichiers ressources dans le répertoire du projet dans Eclipse avec une variable d’environnement
existe il une autre solution que de changer de jdk
Merci pour vos réponses Cordialement,
Gilbert Pêche
os : windows 10
jdk : 1.6
eclipse : Helios
Partager