Bonjour,
J'espère que vous vous portez bien, moi non, la raison est la suivante:

J'utilise une methode pour dezipper un fichier, merci à F. Martini (adiGuba) pour execellent tutoriel sur java7

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
21
22
23
24
25
26
27
28
29
30
31
public void deziper(final Path zipFile, final Path destDir) throws IOException
	  { 	 
		// On crée un FileSystem associé à l'archive :
	        try ( FileSystem zfs = FileSystems.newFileSystem(zipFile, null) ) {
	            // On parcourt tous les éléments root :
	            for (Path root : zfs.getRootDirectories()) {
	                // Et on parcourt toutes leurs arborescences :
	                Files.walkFileTree(root, new SimpleFileVisitor<Path>() {
	                    private Path unzippedPath(Path path) {
                                return Paths.get(destDir.toString(), path.toString()).normalize();
	                    }
 
	                    @Override
	                    public FileVisitResult preVisitDirectory(Path dir,
	                            BasicFileAttributes attrs) throws IOException {
	                        // On crée chaque répertoire intermédiaire :
	                        Files.createDirectories(unzippedPath(dir));
	                        return FileVisitResult.CONTINUE;
	                    }
 
	                    @Override
	                    public FileVisitResult visitFile(Path file,
	                            BasicFileAttributes attrs) throws IOException {
	                        // Et on copie chaque fichier :
	                        Files.copy(file, unzippedPath(file), StandardCopyOption.COPY_ATTRIBUTES, StandardCopyOption.REPLACE_EXISTING);
	                        return FileVisitResult.CONTINUE;
	                    }
	                });
	            }
	        }
	   }
Les fichiers existant sont écrasés sant problème, sauf un fichier jar executable qui se trouve dans le même repertoire que l'application et ce fichier n'est pas en cours d'utilisation l'erreur qui s'affiche est la suivante:

09oct.2012 13:52:12,484 - 0 [AWT-EventQueue-0] WARN barakahfx.ModuleUpdater - Exception
java.nio.file.AccessDeniedException: G:\Program Files\Djindo\Imanis\Djindo.jar
at sun.nio.fs.WindowsException.translateToIOException(Unknown Source)
at sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source)
at sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source)
at sun.nio.fs.WindowsFileSystemProvider.implDelete(Unknown Source)
at sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(Unknown Source)
at java.nio.file.Files.deleteIfExists(Unknown Source)
at java.nio.file.CopyMoveHelper.copyToForeignTarget(Unknown Source)
at java.nio.file.Files.copy(Unknown Source)
at lib.GererFichier$3.visitFile(GererFichier.java:167)
at lib.GererFichier$3.visitFile(GererFichier.java:150)
at java.nio.file.FileTreeWalker.walk(Unknown Source)
at java.nio.file.FileTreeWalker.walk(Unknown Source)
at java.nio.file.FileTreeWalker.walk(Unknown Source)
at java.nio.file.Files.walkFileTree(Unknown Source)
at java.nio.file.Files.walkFileTree(Unknown Source)
at lib.GererFichier.deziper(GererFichier.java:150)
at barakahfx.ModuleUpdater.demarrerUpdate(ModuleUpdater.java:98)
at barakahfx.AppliCtrl.demarrer(AppliCtrl.java:92)
at barakahfx.BarakahFx$1.actionPerformed(BarakahFx.java:56)
at javax.swing.Timer.fireActionPerformed(Unknown Source)
at javax.swing.Timer$DoPostEvent.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Merci à tous ceux qui porteront une attention même des plus minimes à ma préoccupation.