java - 将源文件包含在可运行的 jar 文件中

标签 java eclipse file jar executable-jar

我必须使用可运行的 jar 文件创建安装程序,当 jar 文件运行时,它必须将文件复制到某些目录上。我在 java 项目中包含了几个文件夹,如下图所示: enter image description here

我必须将 dcc、contactless 和 vfsc5000 文件夹粘贴到某些目录。

我正在使用这段代码:

public class copyFiles {
  // private static final String MAIN_PATH = "C:\\Users\\Hamza\\Documents\\";
  private static final String MAIN_PATH = "resources";

  public static void main(String[] args) throws IOException {
    // file1: "Hello World!"
    FileUtils.copyDirectory(FileUtils.getFile(MAIN_PATH), // source
        FileUtils.getFile("C:\\Windows\\java\\classes\\postilion" + "contactlessVfsc5000\\")); // destination

  }
}

但是当我导出可运行的jar并在cmd中执行它时,它会抛出文件未找到异常,源“资源不存在”。这意味着 jar 没有导出这些文件夹。 请帮我解决这个问题。谢谢。

最佳答案

您必须使用以下步骤将所需的文件夹添加到构建路径:

点击项目 -> 属性 -> 构建路径 -> 源 -> 添加文件夹

然后使用 class.getResourceAsStream() 来读取它,而不是 File 和 FileReader。

希望能成功!! :)

关于java - 将源文件包含在可运行的 jar 文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38685537/

相关文章:

java - 如何在java中解析嵌套的json数组

java - 将 .jar 文件上传到远程存储库

java - 企业 Java Web 应用程序通常需要访问文件系统吗?

javascript - 如何用javascript读取txt文件

java - toString() 错误,无法解析方法 toString()

java - XPath Java Selenium 尝试根据另一列中的文本单击一个列中的值

java - 我可以获得具有更大滑动窗口的 Char 迭代器吗? java/scala

eclipse - 在编辑超过 2000 行的文件时加速 Eclipse

eclipse - 如何修复 "Cannot invoke Tomcat manager: Server returned HTTP response code: 403 "

c++ - 如何从 C++ 中的文件中随机获取信息?