日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

C:\Users\xx\.xxxxxx\system\tomcat\xxx\work\Catalina\localhost\ROOT(系统找不到指定文件)

發布時間:2023/12/10 windows 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C:\Users\xx\.xxxxxx\system\tomcat\xxx\work\Catalina\localhost\ROOT(系统找不到指定文件) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

編寫SMM項目,上傳zip文件報錯

代碼在執行到 此處時

ZipInputStream zipInputStream = new ZipInputStream(new FileInputStream(file))

上傳文件報錯
報錯內容:C:\Users\用戶\\.IntelliJIdea2017.1\system\tomcat\項目名稱\work\Catalina\localhost\ROOT\upload_d80c742e_a6ec_432a_b644_bd403f2938c6_00000000.tmp (系統找不到指定的文件。)

項目用的是SSM框架,是用來整合activiti的項目,采用zip上傳文件的形式部署流程。 一開始是以為自己的配置文件有錯,后來看了半天也沒看出來。

感覺沒啥錯誤呀,網上查看半天也沒啥結論,后來偶爾測試一下發現其他的文件上傳卻是沒啥問題,此時就感覺到頭疼了。

經過查找發現這個目錄C:\Users\用戶\.IntelliJIdea2017.1\system\tomcat\項目名稱\work\Catalina\localhost\ROOT\

這個目錄是用來存儲臨時文件的目錄,每次tomcat重啟都會將此目錄刪除重建。

每當有文件上傳的時候,系統就會去到這么一個目錄中找尋一個臨時文件然后再讀取該臨時文件,找不到就會報錯

然后就發現其他文件都能上傳,只有activiti的zip這個文件上傳不了

為什么只有這個zip文件不會創建臨時文件?難道是因為格式的問題?這個想法思索了很久,找了很多博客也沒有一個解決方案,最后再一個巧合的情況下突然發現,springMVC在配置上傳文件的配置文件中缺少了一個參數

maxInMemorySize 這個參數指的是文件的大小,如果超過這個限制就會在臨時目錄下創建臨時文件,而如果小于這個值,文件則直接在留在內存中,然后我突然明白了,我的那個zip文件是7kb應該是小于了默認值,所以才不會去創建這么一個臨時文件,但是當代碼執行到此處時

ZipInputStream zipInputStream = new ZipInputStream(new FileInputStream(file));

還是會去臨時工作目錄中找臨時文件,發現找不到,于是就報這個錯誤。

C:\Users\用戶\\.IntelliJIdea2017.1\system\tomcat\項目名稱\work\Catalina\localhost\ROOT\upload_d80c742e_a6ec_432a_b644_bd403f2938c6_00000000.tmp (系統找不到指定的文件。)

所以當設置好這個參數后 ,就能上傳成功了。但是注意0KB 的文件是依然上傳不成功的除非是1KB 的文件

uploadTempDir 這個參數可以修改緩存文件的地址,不賦值的話就默認為上面那一大長串的地址,賦值之后則可以自己控制了,一般還是自己控制的比較好,因為如果項目啟動時間很長,幾天之后這個目錄就會被自動回收掉,然后就會上傳報錯。

還有這個 temp 文件夾是在webapp 目錄下的

總結

以上是生活随笔為你收集整理的C:\Users\xx\.xxxxxx\system\tomcat\xxx\work\Catalina\localhost\ROOT(系统找不到指定文件)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。