我們正在制定一個框架並向客戶出售源代碼。昨天,其中一位客戶報告說,由於路線太長,他無法建立消息來源。我發現我們在源代碼中的最長路徑是NuGet生成的路徑,它是: project\packages\EnterpriseLibrary.ExceptionHandling.Logging.5.0.505.0\lib\NET35\Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Logging.dll
。使用NuGet建設時的長路徑
加上客戶放置資源的文件夾名稱(它不會很長,大約90個字符),以及與合成絕對路徑時的奇怪VS行爲,它超過了260個字符的限制,並且他的VS無法編譯解決方案。
無論如何,我可以解決這個問題?我無法要求客戶把資源放在靠近磁盤的地方 - 他有自己的協議,把代碼放在公司內部。我也可以重命名這個DLL,但我不想失去對NuGet的支持。
使用此策略將允許您通過使用符號鏈接縮短文件夾路徑:'MKLINK/D「C:\ tmp」「C:\ your \ really \ long \ path \ here」' –