【问题标题】:Error: E2288 File name too long错误:E2288 文件名太长
【发布时间】:2013-10-31 17:13:19
【问题描述】:

我正在尝试使用命令行运行程序在 TeamCity (http://www.jetbrains.com/teamcity/) 中编译 Delphi 项目。对于每个项目,我都会收到“文件名太长”错误。项目在 Delphi IDE 中成功编译。我什至尝试从 buildagent 目录构建项目(在本例中:C:\TeamCity\buildAgent\work\cbe5a74bfd8678cb\iqwin_2013\Iqworkflow),它也在那里编译。这个特定的命令行构建过去也曾在不同的环境中工作过。

错误:

[15:18:45]Step 2/50: iqworkflow (Command Line)
[15:18:45][Step 2/50] Starting: C:\TeamCity\buildAgent\temp\agentTmp\custom_script5211313096540988416.cmd
[15:18:45][Step 2/50] in directory: C:\TeamCity\buildAgent\work\cbe5a74bfd8678cb\iqwin_2013\Iqworkflow
[15:18:45][Step 2/50] Embarcadero Delphi for Win32 compiler version 22.0
[15:18:45][Step 2/50] Copyright (c) 1983,2010 Embarcadero Technologies, Inc.
[15:18:45][Step 2/50] Error: E2288 File name too long (exceeds 260 characters)
[15:18:45][Step 2/50] Error: E2288 File name too long (exceeds 260 characters)
[15:18:45][Step 2/50] Error: E2288 File name too long (exceeds 260 characters)
[15:18:45][Step 2/50] Error: E2288 File name too long (exceeds 260 characters)
[15:18:45][Step 2/50] IQWorkflow.dpr(1) Fatal: F1027 Unit not found: 'System.pas' or binary equivalents (.dcu)
[15:18:45][Step 2/50] Process exited with code 1
[15:18:45][Step 2/50] Step iqworkflow (Command Line) failed
  • System.pas 可以在C:\Program Files (x86)\Embarcadero\RAD Studio\8.0\source\rtl\sys 中找到

【问题讨论】:

  • 没有超过 260 个字符的文件名(完整路径)。我不认为有任何甚至超过 100 个字符。我认为它与传入的命令行参数有关,但这只是一个猜测。
  • 必须有一个我们在这里看不到的文件名。当您双击这 4 条错误消息之一时,它会将您带到您的代码中的哪个位置?
  • 这些错误消息来自 TeamCity,因此无法深入了解。就像我提到的,该项目在同一台机器上的 Delphi IDE 中成功构建。
  • 等等,“Unit not found: 'System.pas'”让我觉得是你的 IDE 出了问题,而不是你的项目。
  • 也许你可以提供那个custom_script5211313096540988416.cmd的内容?它可以解释这个问题。

标签: delphi teamcity dcc32


【解决方案1】:

问题最终是我的库路径参数中的一个特定路径(大约有 50 个,因此不是立即明显),其中有一个空格,但不是双引号。

破碎: C:\test 文件夹\lib

固定: "C:\test 文件夹\lib"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-07-17
    • 1970-01-01
    • 1970-01-01
    • 2012-02-09
    • 1970-01-01
    • 2017-12-26
    • 1970-01-01
    相关资源
    最近更新 更多