编辑构建定义 - 超过 259 个字符的路径

Posted

技术标签:

【中文标题】编辑构建定义 - 超过 259 个字符的路径【英文标题】:Edit build definition - path over 259 characters 【发布时间】:2017-05-18 03:46:41 【问题描述】:

我需要编辑解决方案的构建定义以包含一些新项目。不幸的是,我不能这样做,因为我不断收到“路径包含超过允许的 259 个字符”的错误。我尝试重命名文件以使其更短 - 现在总路径字符数为 257。但我不断收到相同的错误消息,并且消息中的文件名仍然是旧的、长的。

我现在真的很困惑。该文件位于: C:\Users\USER\AppData\Local\Temp\VSTFSBuild...

有谁知道为什么错误消息中的文件名保持不变或知道任何其他方法来解决问题?

【问题讨论】:

这些文件是您工作区的一部分吗? 【参考方案1】:

令人惊讶的是,我设法以这种方式克服了这个问题:

进入处理并在出现错误消息时单击确定 点击我的构建过程模板旁边的“显示更多详细信息” 点击刷新按钮

(我使用的是 Visual Studio 2012)

【讨论】:

似乎有一些缓存或延迟锁定构建定义。您可以将此标记为答案。这将对本网站的其他人有所帮助。【参考方案2】:

对于这种长路径问题,常见的解决方法是在服务器上shorten the build path

例如:而不是\xx\Build\Drop\ProjectName,只需使用\xx\Build\Drop(或\xx\Builds),因为项目名称也在构建名称中。

对于 TFS 中的长路径问题,有一个相关的uservoice,现在已经完成。

Fix 260 character file name length limitation

我们已从 BCL 中删除了基本文件的限制 操作功能(CRUD)。您可以在此处找到更多详细信息:

https://blogs.msdn.microsoft.com/dotnet/2016/08/02/announcing-net-framework-4-6-2/

Immo Landwerth 项目经理 .NET


如果您使用 XAML 构建定义,默认情况下,构建控件会指定构建路径,以访问您的自定义构建过程所需的任何自定义程序集。如果您没有自定义程序集,则不需要此值。

在您的 Build Server 上打开 Team Foundation 管理控制台,然后点击 build controller 上的 Properties。删除路径并再次尝试编辑构建定义。

【讨论】:

问题是,错误消息是抱怨我的本地主机上的文件,而不是 TFS 上的文件。就像我说的那样,我确实更改了文件名,并且路径现在低于限制。 也许有什么东西锁定了你的构建定义。在 Source Settings 选项卡中更改一些内容并返回到 Process 选项卡,它可能会成功。例如,在 Source Settings 选项卡上,单击第一个空白列的 Status 列并将其更改为 Cloaked,然后单击该行,您会发现没有任何变化。但现在您可以返回“进程”选项卡并再次检查。

以上是关于编辑构建定义 - 超过 259 个字符的路径的主要内容,如果未能解决你的问题,请参考以下文章

路径超过 260 个字符时出现 System.IO.DirectoryNotFoundException [重复]

文件路径长了255个字符,这个“255”如何解释?

[环境配置][C++]ceres编译提示超过 OS 最大路径限制。完全限定的文件名必须少于 260 个字符

允许移动到回收站的最长文件路径是多少?

ModuleBuildError:模块构建失败:TypeError [ERR_INVALID_ARG_TYPE]:“路径”参数必须是字符串类型。接收类型未定义

Photoshop 自定义形状到 SVG 路径字符串