Eclipse导出文件jar不包含文件夹

时间:2014-08-27 11:53:10

标签: java eclipse jar directory runnable

我用eclipse创建了一个可运行的jar。在我的项目中,我有一个名为问卷的文件夹,其中包含我使用的一些文本文件。当我运行我的runnable jar时它不起作用,除非我和jar文件夹问卷在同一个文件夹中。我尝试了一些我在stackoverflow中读取的解决方案,例如添加文件夹问卷作为源文件夹以及属性 - > java构建路径 - > libraries - >添加类文件夹并添加问卷文件夹,但仍无效。

这是代码:

 File srcFolder = new File(".\\questionnaire");
 if(!srcFolder.exists()){

   System.out.println("Directory does not exist.");
   //just exit
   System.exit(0);

}

每次我收到消息“目录不存在”。此外,当我解压缩jar时,没有文件夹问卷

2 个答案:

答案 0 :(得分:2)

要将文件夹“问卷调查”添加到您的jar中,您需要将“问卷调查”的父目录设置为源文件夹。

然后,你的jar中会有一个问卷“文件夹”。但是,您将无法通过File API访问它,因为它不是常规文件夹,而是jar中的条目。如果您只需要从该文件夹中读取文件,请查看Class.getRessourceAsStream(String)方法。

答案 1 :(得分:1)

在jar中导出文件夹不是一个好主意。此外,如果以某种方式导出它们,则无法访问该文件夹的文件。您再次需要使用JarFile类来读取该文件夹的内容。

你可以做的一件事是创建没有文件夹里面的jar。 使用此行

File srcFolder = new File("questionnaire");

当您运行jar时,请确保jar和问卷文件夹位于同一目录中。这将有效地工作。

阅读此thread