如何在Heroku环境/ Heroku的机器上读取文件? Java的

时间:2017-01-06 13:05:21

标签: java heroku readfile

我可以在本地读取文件。结构:

somePackage
    -- A.class
    -- someFile.properties

本地工作的代码,如下所示:

InputStream stream = A.class.getResourceAsStream("someFile.properties");
-- then I pass the stream and continue my work

或者像这样:

String filePath = A.class.getResource("someFile.properties").getPath();
-- then I pass the path, open the file and continue my work

当部署到Heroku时,我得到空指针或文件未找到异常。

那么为什么这些都不适用于Heroku的 容器

注意:我的" A" class就像类一样实用,所以我永远不会实例化#34; A"对象。

已解决:我将someFile.properties移动到src / main / resources(打包到.war时,someFile.properties在WEB-INF / classes中)并使用此代码获取路径, 注意领先" /"

String path = "/" + A.class.getProtectionDomain().getCodeSource().getLocation().getPath()  + "someFile.properties";

我认为有更好的方法来获取"类的目录"但这种方式恰好满足了我的需求。

0 个答案:

没有答案