Creating Runnable Jar with external files included

ⅰ亾dé卋堺 提交于 2019-11-26 12:29:58

问题


I want to build a runnable jar in java. I need to include some of the files in the jar so that when I execute jar the files are automatically read from the java class. Hence I created a folder in the project and referred these files from the project. I created jar file following some tutorial but I could not able to include these external files in my jar file. Please let me about creating runnable jar with external files.

My file struture is

Test
|
|
-------src
|        |
|        default package
|                      |
|                      |
|                      test1.java
|
 -------FileFOlder
|              |
|              | 
|              abc.txt

I am accessing abc.txt in test1.java class. My code is,

public class test1 {


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


    char [] read = new char[20];
    String path = new File(\".\").getCanonicalPath();
    path = path+\"\\\\Newfolder\\\\abc.txt\";
    System.out.println(path);
    File nF = new File(path);
    FileReader fR = new FileReader(nF);
    fR.read(read);
    for(char c : read){
        System.out.print(c);
    }
    fR.close();
    System.out.println(\" Hi..This is test program \");
}

}

When I create executable jar using eclipse export option, I am unable to see FileFolder directory inside the jar. Please give me some information regarding this.


回答1:


Here's what you should do instead:

Put that file back in your jar file. Use class.getResourceAsStream() to read it instead of File and FileReader. Here is an explanation of how to do that: How to really read text file from classpath in Java




回答2:


Problem Solved!

here is how:

1) right click your project folder and create a new folder.

2) move all of your files that you want packed into the jar into that folder.

3) click project -> properties -> Build Path -> Source -> Add Folder and select that folder you just created.

4) create your JAR!

Since you already have created your folder with abc.txt insideit, you can skip steps 1 and 2

EDIT: one way you can make sure your JAR contains these files is to use 7zip.



来源:https://stackoverflow.com/questions/18091046/creating-runnable-jar-with-external-files-included

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!