Как добавить файлы src в jar? - PullRequest
1 голос
/ 22 января 2012

Я создал приложение Java, которое считывает данные из txt-файла, расположенного в папке src.Путь, который я указал в программе, - /src/data.txt, и он работает, когда я запускаю его из netbeans.Однако, когда я попытался открыть файл JAR, ничего не открывается.Поэтому я попытался использовать javac из командной строки, и это выдает ошибку, что data.txt не может быть найден.

Как мне убедиться, что файл данных включен в jar-файл, чтобы он работал автономно?Благодарю.EDIT1: вот фрагмент кода, который я использую для загрузки файла.И используемый путь - вышеупомянутый /scr/data.txt

public String [] openFile() throws IOException {
      FileReader fr = new FileReader(this.path);
      BufferedReader br = new BufferedReader(fr);
      String []text = new String[this.numberoflines];
      for(int i=0;i<this.numberoflines;++i)
      {
          text[i]=br.readLine();
      }
      br.close();
      return text;
}

EDIT2: Хорошо, вот вывод tvf:

    Error: Could not find or load main class jar</p>

<code>C:\Users\Abhishek>jar -tvf Scrades.jar
     0 Sun Jan 22 18:47:08 IST 2012 META-INF/
   199 Sun Jan 22 18:47:06 IST 2012 META-INF/MANIFEST.MF
  2562 Sun Jan 22 18:47:08 IST 2012 CombinationGenerator.class
   684 Sun Jan 22 18:47:08 IST 2012 Gameplay$1.class
   684 Sun Jan 22 18:47:08 IST 2012 Gameplay$2.class
   684 Sun Jan 22 18:47:08 IST 2012 Gameplay$3.class
   684 Sun Jan 22 18:47:08 IST 2012 Gameplay$4.class
   684 Sun Jan 22 18:47:08 IST 2012 Gameplay$5.class
   969 Sun Jan 22 18:47:08 IST 2012 Gameplay$6.class
 18279 Sun Jan 22 18:47:08 IST 2012 Gameplay.class
  2275 Sun Jan 22 18:47:08 IST 2012 PermutationGenerator.class
1252444 Sun Jan 22 18:47:08 IST 2012 eng_final1.txt
3771960 Sun Jan 22 18:47:08 IST 2012 english_huge.txt
815532 Sun Jan 22 18:47:08 IST 2012 english_long.txt
 16104 Sun Jan 22 18:47:08 IST 2012 english_short.txt
  1506 Sun Jan 22 18:47:08 IST 2012 readFile.class
</code>

1 Ответ

0 голосов
/ 22 января 2012

Вы можете вручную проверить, поместить и удалить файл в архиве jar, используя экстрактор rar, такой как winrar: затем получить доступ в соответствии с Class.getResourceAsStream(String);

    InputStream is = getClass().getResourceAsStream("/src/data.txt");
    InputStreamReader isr = new InputStreamReader(is);
    BufferedReader br = new BufferedReader(isr);
    String line;
    while ((line = br.readLine()) != null){
      //Perform operations
    }
    br.close();
    isr.close();
    is.close();
...