我有一个具有这样的源代码布局的应用程序:
src
main
java
com
mypackage
MyClass.java
resources
queries
query.sql
在我的MyClass中,我可以加载资源query.sql
URL url = Resources.getResource("queries/query.sql");
String query = Resources.toString(url, Charset.UTF-8);
当我从本地IDE运行Guava库时,会使用它。
但是当我构建jar时,有这样的结构:
myjar.jar
com
mypackage
MyClass.class
queries
query.sql
部署到服务器后,我有:
IllegalArgumentException:找不到资源查询/query.sql。
如果我不想将sql脚本放入mypackage包中并将其保存在单独的文件夹中,是否可以解决此问题?谢谢。
问题来源:Stack Overflow
@VGR的评论副本在这里:
正确的调用是: MyClass.class.getResource("/queries/query.sql")
回答来源:Stack Overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。