首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >导出到Eclipse上的runabble jar时,相对路径不起作用

导出到Eclipse上的runabble jar时,相对路径不起作用
EN

Stack Overflow用户
提问于 2018-06-06 22:38:31
回答 1查看 73关注 0票数 0

我正在Eclipse中做一个Java项目。我使用了一些相对路径,例如:

代码语言:javascript
复制
File htmlTemplateFile = new File("src/templateGeno2Pheno.html");

而不是绝对路径:

代码语言:javascript
复制
File htmlTemplateFile = new File("/Users/.../Documents/workspace/SeqAnalysis/src/templateGeno2Pheno.html");

当我用Eclipse运行它时,一切都运行得很好,但是一旦我把它导出到一个可运行的JAR中并执行它,它就不能工作了。

这是我的文件夹结构:

下面是我的代码:

EN

回答 1

Stack Overflow用户

发布于 2018-06-06 23:18:57

在打包到JAR之后,所有内容,包括HTML模板,都被压缩到JAR中,因此文件系统路径对您不起作用。Java没有像您的浏览器/html那样的文件寻址系统。

一种选择是使用ClassLoader.getResourceAsStream应用编程接口加载那些html模板。

将您的代码更改为:

代码语言:javascript
复制
InputStream stream = this.getClass().getClassLoader().getResourceAsStream("/templateGeno2Pheno.html");
String htmlString = IOUtils.toString(stream);

IOUtils来自Apache Commons IO库。

HTH

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50723140

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档