如何告诉Spring
该资源应该是一个网络资源,并让它自动相应地自动装配?
@Value("\\MY-MACHINE\thefile.txt")
private Resource file;
结果:
Caused by: java.io.FileNotFoundException: class path resource [MY-MACHINE\thefile.txt] cannot be resolved to URL because it does not exist
答案 0 :(得分:1)
我假设你的应用程序部署在Windows上。我没有任何Windows工作站来测试它,但据我记得这是它的方式:
创建指向您网络位置的符号链接:
mklink /D C:\my-machine \\MY-MACHINE\
使用绝对路径引用此符号链接:
@Value("file:///C:/my-machine/thefile.txt")
private Resource file;
答案 1 :(得分:1)
似乎没有人注意到,我发现使用双斜线是必要的:
@Value("\\\\MY-MACHINE\\thefile.txt")
private Resource file;
在某些情况下,您可能需要file:
声明,例如:
file:\\\\MY-MACHINE\\thefile.txt"
答案 2 :(得分:0)
这是使用classpath
import org.springframework.core.io.Resource;
@Value("classpath:<path to file>")
private Resource file;
答案 3 :(得分:0)
访问Windows共享上的文件无法直接使用。有关如何执行此操作的详细信息,请参阅connecting to shared folder in windows with java。