如何在Jetty服务器上使用war文件外的文件?

3
我想在我的war文件之外使用一些文件。它们位于:
/opt/jetty/webapps

假设我想把一些文件放进去。
/opt/jetty/resources

如何从Java代码中访问它们?当我在部署的项目中使用完整路径时,它无法正常工作(没有日志记录也没有错误)。
Files.readAllBytes(Paths.get("/opt/jetty/resources/config"))

当您的WAR文件部署在不同的容器或者通过网络进行部署时,会发生什么?您必须在命令行选项中提供指向容器中“根”配置的指针(可能位于/etc/myApp/...),并提供指向根配置中所有外部文件的指针。 - Jim Garrison
@JimGarrison,我刚把war文件放到webapps目录下并重新启动了jetty服务。它会自动找到war文件。 - LEQADA
如果您希望引用外部资源,则仍然需要提供外部配置(不是WAR的一部分)。必须有东西提供指向这些外部资源的指针,并且这些位置必须在运行时可发现。 - Jim Garrison
@JimGarrison,我该怎么做? - LEQADA
1个回答

1
如果您需要从文件系统中读取文件,可以直接访问它。如果您的servlet在IDE中看到该文件但未在服务器上看到,可能存在特权/访问权限问题。
如果您的服务器在不同用户下运行,请确保其有权读取和写入所需文件。否则,您将会遇到“Permission Denied”错误。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接