我编写了一个使用文本文件中的sql脚本的应用程序。我已将.txt文件放在项目根文件夹中。
将项目导出到jar后,将其放在Web项目中的/ lib文件夹中。使用.txt文件的进程找不到它。
放置文件的位置?
答案 0 :(得分:3)
在webapp或任何正在运行的jar的上下文中,不使用文件系统资源;它们只能在IDE环境中工作。
改为使用它(例如;还有其他方法可以做到这一点):
public class MyClass
{
private static final URL RESOURCE_URL;
static {
RESOURCE_URL = MyClass.class.getResource("/my/resource");
if (RESOURCE_URL == null)
throw new ExceptionInInitializerError("/my/resource not found");
}
// bla bla...
// code to load from the resource:
try (
final InputStream in = RESOURCE_URL.openStream();
// others, as needed
) {
// work here
}