英文:
java.io.FileNotFoundException getting path to file in java
问题
以下是翻译好的内容:
我有以下代码来检查某个路径上是否存在文件,如果不存在,则将该文件从项目中复制过来,它运行良好。
public static void verificarDB() throws IOException {
File cygnus_db = new File(System.getProperty("user.home") + File.separator + ".local" + File.separator + "cygnus" + File.separator + "cygnus_db_local.db");
if (!cygnus_db.exists()) {
File source = new File("src/assets/bd/cygnus_db_local.db");
File target = new File(System.getProperty("user.home") + File.separator + ".local" + File.separator + "cygnus" + File.separator + "cygnus_db_local.db");
FileUtils.copyFile(source, target);
}
}
但是,当我将项目导出为可运行的JAR文件时,我会得到以下异常:
java.io.FileNotFoundException: 源文件 'src/assets/bd/cygnus_db_local.db' 不存在
at org.apache.commons.io.FileUtils.checkFileRequirements(FileUtils.java:1383)
at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:1060)
at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:1028)
at pruebas.Main.verificarDB(Main.java:123)
at pruebas.Main.main(Main.java:30)
我做错了什么?
英文:
I have the following code for check if a file exists on some path, if not, that file is copy from the project, and it works.
public static void verificarDB() throws IOException {
File cygnus_db = new File(System.getProperty("user.home")+File.separator+".local"+File.separator+"cygnus"+File.separator+"cygnus_db_local.db");
if(!cygnus_db.exists()) {
File source = new File("src/assets/bd/cygnus_db_local.db");
File target = new File(System.getProperty("user.home")+File.separator+".local"+File.separator+"cygnus"+File.separator+"cygnus_db_local.db");
FileUtils.copyFile(source, target);
}
}
But when i export my project to a runnable jar i get this exception:
> java.io.FileNotFoundException: Source 'src/assets/bd/cygnus_db_local.db' does not exist
at org.apache.commons.io.FileUtils.checkFileRequirements(FileUtils.java:1383)
at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:1060)
at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:1028)
at pruebas.Main.verificarDB(Main.java:123)
at pruebas.Main.main(Main.java:30)
What im doing wrong?
专注分享java语言的经验与见解,让所有开发者获益!
评论