无法链接已部署的java程序

时间:2017-05-09 12:45:55

标签: java apache properties-file

我刚刚完成我的项目一切正常但是当我将它部署到.jar时它没有显示图像, 所以我在网上搜索并找到了解决方案,最初我正在使用这个

File file = new File("src/sample/Drawables/1.jpg");
Image image = new Image(file.toURI().toString());


Imageview.setImage(image);

当我只是通过IDE构建运行应用程序时,这工作得很好。

但是当我在部署应用程序后尝试运行时,图像未显示 所以我找到了解决方案

Image image = new Image(String.valueOf(getClass().getClassLoader().getResource("src/sample/Drawables/1.jpg")));
        Imageview.setImage(image);

执行此操作后,我的图像显示在已部署的应用程序中。

所以我尝试了simmiler approch for prooperties文件 最初代码是

            File file = new File("src/sample/PropertiesMain/Alpha.properties");


        if(!file.exists()){
            file.createNewFile();
        } 

所以这个代码再次运行正常,直到我将我的应用程序部署到jar文件

给出的错误是java io异常无法找到指定的文件。

我愚蠢地应用了同样的approch,就像我为图像所做的那样。

档案文件=新

File(String.valueOf(getClass().getClassLoader().getResource("src/sample/PropertiesMain/Alpha.properties")));


                if(!file.exists()){
                    file.createNewFile();
                }

显然有这个错误ERROR

我需要一些帮助,我怎样才能获得该属性文件!

请询问您是否需要任何其他信息!!

我正在解释我的问题并不重复,因为在我部署它之前,它并不是要求获得绝对路径或我的程序运行良好的任何内容。 我正在寻求帮助,因为学生通常不知道错误的绝对原因。 而不是去搜索像This这样的东西 顺便说一下,问题并没有解释我在问题中提出的问题。

1 个答案:

答案 0 :(得分:1)

我在link找到了答案 这是我应该用来从jar中读取文件

InputStream is = myClass().getResourceAsStream("res/usernames.txt"); reader = new LineNumberReader( new InputStreamReader(is) );