从命令行运行Java Eclipse项目

时间:2014-05-06 22:07:17

标签: java eclipse jar executable-jar

您好我想运行一个java Eclipse项目表单命令行..我尝试制作一个Jar和Runnable Jar(两个选项),并在需要时使用清单。

我无法解决的问题是,当我的程序试图读取txt文件时,它总是会给我一个FileNotFound错误。我该如何解决这个错误?我在网上找不到它。

由于

示例:

in = new BufferedReader(new FileReader("CompanyNameListModified.txt"));

错误:

Exception in thread "main" java.io.FileNotFoundException: CompanyNameListModified.txt (No such file or directory)

1 个答案:

答案 0 :(得分:0)

假设文本文件位于jar本身,那么就不要将其作为文件抓取,因为从技术上讲,这些文件并不存在于jar文件中,而是将其作为资源获取。

如,

package foo;

import java.io.InputStream;
import java.util.Scanner;

public class TestResource {
   public static void main(String[] args) {
      ClassLoader classLoader = ClassLoader.getSystemClassLoader();     
      String resourceName = "foo/movies.txt"; // path relative to classloader
      InputStream inStream = classLoader.getResourceAsStream(resourceName);
      Scanner scanner = new Scanner(inStream);
      while (scanner.hasNextLine()) {
         System.out.println(scanner.nextLine());
      }
      if (scanner != null) {
         scanner.close();
      }
   }   
}

jar文件的内容是:

C:\Users\hovercraft\Jar files>jar tf TestResource.jar
META-INF/MANIFEST.MF
foo/TestResource.class
foo/TestResource.java
foo/movies.txt
相关问题