【地震高岗,西山一派,千古秀】背景
请求文件上传时,我们一般传入文件路径作为参数,可以使用常见的路径获取方法,如:this.().().("").()来获取文件路径该项目; 但是部署Java项目时需要打包成jar包,运行后会出现错误:路径异常; 那么是什么原因导致了这个错误呢? 我们如何获取jar中的文件路径?
原因是我们的项目打包部署jar的时候,那么jar包是以特殊格式的文件形式存在的,而资源只能通过IO的方式读取,所以此时无法通过操作操作资源通用文件。 之所以能够在本地IDE项目中正常运行,是因为编辑器中的资源文件都在/目录下,这是正常的文件系统结构,我们可以逐层获取资源路径。
方法一:创建一个临时文件,使用IO读取文件内容并输出到临时文件中,这样我们就可以获取到临时文件路径而不是项目中的文件路径,当然这样比较消耗资源;
方法二:我们在ftp上传时可以使用以下方法,个人测试可用。 ftp=new();
ftp.(10*1000);
ftp.(ip);
ftp.login(名称,密码);
ftp.(DTP.);
ftp.("GBK");
ftp.e();
dir = ftp.y();
=“//测试.sh”; //注意前面的'/'不能省略
= 目录 + ;
= 这个.().( );
ftp.( ,);
思考
其实,当我们试图解决问题时,我们也可以考虑问题本身是否是一个伪命题; 从另一个角度来说,我们为什么要将我们使用的文件打包到jar中呢? 一定要放在罐子里吗? 这种场景下使用文件服务器是不是更方便、更高效呢? 如果我们弄清楚了,是不是就能自然避免这个问题呢? 好吧,朋友们。 。 。 别说了,晚安!
【大门临海,三江同流千年】