Skip to content

Instantly share code, notes, and snippets.

@andrebian
Created October 29, 2014 16:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save andrebian/b6fed39c4c3d269db020 to your computer and use it in GitHub Desktop.
Save andrebian/b6fed39c4c3d269db020 to your computer and use it in GitHub Desktop.
Erro apresentado
// Método que realiza a cópia
/**
* Copia o banco de dados limpo caso o mesmo ainda não exista
*/
protected void copyDatabaseIfDoesntExist() {
String databasePath = System.getenv("ProgramFiles") + File.separator
+ "Andre" + File.separator;
String inputUrl = getClass()
.getResource("/resources/database-sample.db").toString()
.replace("file:", "").replace("jar:", "").replace("!", "")
.replace("rsrc:", "");
File directory = new File(databasePath);
if( !directory.exists() ) {
directory.mkdir();
}
File source = new File(inputUrl);
File dest = new File(databasePath + "database.db");
if( !dest.exists() ) {
try {
Files.copy(source.toPath(), dest.toPath());
System.out.println("Copiou o banco de dados");
} catch (IOException e) {
e.printStackTrace();
}
}
}
O erro que tenho é este:
java -jar nome-do-programa.jar
java.nio.file.NoSuchFileException: resources/database-sample.db
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
at sun.nio.fs.UnixCopyFile.copy(UnixCopyFile.java:524)
at sun.nio.fs.UnixFileSystemProvider.copy(UnixFileSystemProvider.java:253)
at java.nio.file.Files.copy(Files.java:1227)
at br.redsuns.dblayer.DBFactory.copyDatabaseIfDoesntExist(DBFactory.java:92)
at br.redsuns.dblayer.DBFactory.getDatabasePath(DBFactory.java:64)
at br.redsuns.dblayer.DBFactory.buildConnection(DBFactory.java:27)
at br.redsuns.dblayer.DBFactory.executeQuery(DBFactory.java:41)
at br.redsuns.model.Campanha.salva(Campanha.java:61)
at br.redsuns.window.MainWindow$2.actionPerformed(MainWindow.java:126)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6516)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3311)
at java.awt.Component.processEvent(Component.java:6281)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4872)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4698)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4698)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:708)
at java.awt.EventQueue$4.run(EventQueue.java:706)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
No entanto rodando pelo eclipse a saída é esta:
Copiou o banco de dados
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment