【问题标题】:DLL Reference Issue with TFS Build serverTFS 构建服务器的 DLL 参考问题
【发布时间】:2016-03-16 14:20:11
【问题描述】:

我正在尝试在我的 VS 2013 项目中实现 TFS 构建服务器。但是遇到了一些第三方 dll 参考问题。我的本地文件夹和 TFS 中的源结构相同,并且 csproj 文件中的 dll 提示路径设置为相对路径。

请帮我解决这个问题。

【问题讨论】:

  • 您可能必须将其转换为本地 nuget 包并以这种方式引用它。它的操作相当简单,是 Microsoft 推荐的处理本地 dll 的方法。
  • 这些是与我们的自定义项目模板关联的自定义 dll。由于我必须为多个项目实现构建服务器,因此不可能将所有内容都转换为 nuget 包。
  • 那么请确保您的 dll 保存在 TFS 中,并根据您的屏幕截图 1 映射正确的路径。同样,使用 nuget 包很简单,您可以将包保存在 tfs 中,并且很容易版本。它根本不会增加太多工作。
  • 我的 dll 也在 TFS 的正确文件夹中。我认为这不是问题。我的构建定义或项目文件设置有什么问题吗?
  • 这不是它们在 TFS 中的错误位置,而是构建定义。执行时不会将它们拉入。这就是您在屏幕截图 1 中定义的内容,从 TFS 中提取的内容以及在下一个操作(通常是编译)开始之前将其放置在本地的什么位置。如果配置不正确,您将不会拉入您的依赖项,或者将它们拉入但不在预期的位置。

标签: .net visual-studio-2013 tfsbuild build-server


【解决方案1】:

我终于明白了。我已使用 $(MSBuildProjectDirectory) 将 .csproj 文件中提示路径的相对路径更改为 TFS 特定路径。即,..\..\Common\Myclass.dll 更改为 $(MSBuildProjectDirectory)\Common\Myclass.dll。它解决了我的问题并成功构建。

【讨论】:

  • 当我在(Windows 窗体)项目中使用它时,这个解决方案对我有用。但是当我在使用外部 DLL 的(类库)项目中使用它时它不起作用。
猜你喜欢
  • 1970-01-01
  • 2015-11-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-30
相关资源
最近更新 更多