java - 导出后出现 FileSystemNotFoundException

标签 java export

今天我在导出后遇到问题(我使用的是 ecplise) (我的应用程序在导出之前有效,但在导出之后无效)

错误屏幕:https://image.noelshack.com/fichiers/2019/33/4/1565884882-capture.png

我尝试使用其他库处理选项导出,它给了我同样的错误,但有更多错误:

错误屏幕:https://image.noelshack.com/fichiers/2019/33/4/1565885180-capture.png

这是我的启动方法所在的类:

package com.bleu.application;

import java.io.File;
import java.io.IOException;
import java.net.URISyntaxException;
import java.net.URL;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class Bleu {

    public static void launch() throws IOException, URISyntaxException {


        File Bleu = new File("C:\\temp\\Bleu.exe");

        URL url = Bleu.class.getResource("Bleu.exe");
        Path source = Paths.get(url.toURI());

        Files.copy(source, Bleu.toPath());

       }
}

还有主类

package com.bleu;

import java.io.IOException;
import java.net.URISyntaxException;

import com.bleu.application.Bleu;
import com.bleu.bootstrap.bootstrap;

public class Main {

public static void main(String[] args) throws IOException, URISyntaxException {

    Checker.deleteExists();

    bootstrap.update();
    Bleu.launch();
    }
}

最佳答案

永远不要假设资源是常规文件。如果资源位于 .jar 文件内,则它只是压缩字节的子序列,而不是真正的文件。

不要尝试将资源视为路径,而是将其作为输入流获取,然后复制该输入流:

Path bleu = Paths.get("C:\\temp\\Bleu.exe");

try (InputStream source = Bleu.class.getResourceAsStream("Bleu.exe")) {
    Files.copy(source, bleu);
}

关于java - 导出后出现 FileSystemNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57512801/

相关文章:

java - 由 JAR 文件创建的 Excel 文件被分解为更小的文件,尽管我没有在 IDE 中执行此操作

java - 导出使用无限 JCE 策略(加密)的 Java 程序

excel - cakephp excel/csv 导出组件

Java客户端套接字无法识别heroku服务器

java - 在日期中添加天数

java - 这段代码如何修改传入的对象?

Excel:导出一个带有所有宏的功能区选项卡

mysql - Prestashop mysql 导出旧数据

JavaFX 3D 深度渲染不正确

java - 像@depreciated这样的注释