vue2匯入專案遇到錯誤

xiiiiiiix發表於2024-08-07

今天再匯入之前的vue2的專案以後出現異常

報錯程式碼為

    1. Error: error:0308010C:digital envelope routines::unsupported
    2. at module.exports (D:\XXX\map-edit2\font\node_modules\webpack\lib\util\createHash.js:135:53)
    3. at NormalModule._initBuildHash (D:\XXX\map-edit2\font\node_modules\webpack\lib\NormalModule.js:417:16)
    4. at handleParseError (D:\XXX\map-edit2\font\node_modules\webpack\lib\NormalModule.js:471:10)
    5. at D:\XXX\map-edit2\font\node_modules\webpack\lib\NormalModule.js:503:5
    6. at D:\XXX\map-edit2\font\node_modules\webpack\lib\NormalModule.js:358:12
    7. at D:\XXX\map-edit2\font\node_modules\loader-runner\lib\LoaderRunner.js:373:3
    8. at iterateNormalLoaders (D:\XXX\map-edit2\font\node_modules\loader-runner\lib\LoaderRunner.js:214:10)
    9. at Array.<anonymous> (D:\XXX\map-edit2\font\node_modules\loader-runner\lib\LoaderRunner.js:205:4)
    10. at Storage.finished (D:\XXX\map-edit2\font\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16)
    11. at D:\XXX\map-edit2\font\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:9
    12. at D:\XXX\map-edit2\font\node_modules\graceful-fs\graceful-fs.js:123:16
    13. at FSReqCallback.readFileAfterClose [as oncomplete] (node:internal/fs/read_file_context:68:3) {
    14. opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
    15. library: 'digital envelope routines',
    16. reason: 'unsupported',
    17. code: 'ERR_OSSL_EVP_UNSUPPORTED'
    18. }
      錯誤程式碼跟這個一模一樣03000086跟0308010C 都報錯為unsupported(不支援的服務。。)
      分析原因 :百度的問題說是ssl的以前的版本較為寬鬆,更新以後較為嚴格,新版本不可以執行老版的ssl金鑰
      解決思路 : 修改金鑰 || 關閉檢測 || 刪除判斷
      我這裡選擇的是修改配置檔案關閉檢測是較為簡單的方法,百度看csdn大佬有4中解決方法,我是第三種解決的,遇到此問題幾種方法都可以試一試
      終端輸入:

      Linux & Mac OS:

      export NODE_OPTIONS=--openssl-legacy-provider
      Windows:

      set NODE_OPTIONS=--openssl-legacy-provider
      方案2:開啟IDEA 終端,直接輸入(問題解決)
      $env:NODE_OPTIONS="--openssl-legacy-provider"

      方案3:解除安裝當前版本,安裝合適的版本(node.js)

      方案4:

      解決方式(僅限 windows):

      在專案中 package.json 的 scripts 中新增 SET NODE_OPTIONS=--openssl-legacy-provider

      希望有用

相關文章