2017-05-09 51 views
0

我刚完成我的项目,一切工作正常,但是当我将它部署到.jar时,它没有显示图像,因此我在网上搜索并找到解决方案,最初我是使用此无法链接已部署的Java程序中的属性文件

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计算策略的prooperties档案 initily代码为

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


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

所以再此代码工作正常,直到我部署我的应用程序的jar文件

给出的错误是java的IO异常找不到指定的文件。

我愚蠢地应用同样的接近,因为我的形象。

档案文件=新

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


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

很显然得到这个错误ERROR

我需要一些帮助,我怎样让这个属性文件!

请问你是否需要任何额外的信息!

我解释说,我的问题不是重复的,因为它不是要求获取绝对路径或任何我的程序工作良好,直到我部署它。 我在寻找帮助,因为学生通常不知道错误的绝对原因。 而不会去搜索像This 顺便说一下,这个问题没有解释任何接近我问我的问题。

+0

[获得通过classpath中加载的文件的绝对路径(HTTP的可能重复: //sackoverflow.com/questions/8136891/getting-absolute-path-of-a-file-loaded-via-classpath) – tima

+2

'src'文件夹不会也不应该在部署时出现。放在部署中的某个地方,例如一个“资源”目录。而资源不是文件。你需要使用'Class.getResource()'和朋友。不是'文件'。 – EJP

+1

参见http://stackoverflow.com/documentation/java/2433/resources-on-classpath#t=201701111734535687024&a=remarks。 – VGR

回答

1

,我发现我的答案在这link 这是我应该用什么来从罐读取的文件

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

相关问题