我们正在制作一个框架并将消息来源出售给客户。昨天有一位客户报告称由于道路太长,他无法建立源头。我发现源中最长的路径是NuGet产生的路径,它是:
project\packages\EnterpriseLibrary.ExceptionHandling.Logging.5.0.505.0\lib\NET35\Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.Logging.dll
。
与客户放置来源的文件夹名称(它不是很长,大约90个字符)以及用c:\blablabla... ..\..\..\something
组成绝对路径时的奇怪VS行为一起超过260个字符的限制他的VS无法编译解决方案。
无论如何我可以解决这个问题?我无法要求客户将源更靠近磁盘根目录 - 他对将代码放在公司内部的位置有自己的协议。我也可以重命名这个dll,但我不想放弃NuGet的支持。
答案 0 :(得分:1)
你无能为力。如果您的源代码以合理的路径编译(让我们说“D:\ ExternalCode \ yourcode”),那么由您的客户来决定这一点。如果客户决定您的代码必须在解决方案之前已经在240个字符的路径中编译,该怎么办?你会缩短你的所有名字吗?
您需要做的是提供一个简洁易用的手册来构建代码。需要解决源于路径长度的错误,您必须提供解决方案。该解决方案很可能“缩短我们的代码部署的路径”。你不能适应那里的每一家公司的规则和规定。