我是TeamCity的新手,所以请保持温和
我在构建服务器上设置了teamcity。 .net在通过Visual Studio Team Build启动时构建工作,但不是在通过Teamcity启动时(通过单击管理中的运行按钮,以及在签入时)。
构建因加载类似的引用错误而失败,例如.. 用户控件\ ucCalendar.cs
(19, 11): error CS0246: The type or namespace name 'AxMSACAL' could not be found (are you missing a using directive or an assembly reference?)
followed by our own objects which have not been created due to other errors.
DAL\OrderItemCollection.cs
(31, 16): error CS0246: The type or namespace name 'OrderItem' could not be found (are you missing a using directive or an assembly reference?)
我理解这些错误意味着什么,但我显然缺少一些基本的东西,因为我不明白为什么它在通过TFS / Team Build在构建机器上构建时工作但在团队成员时失败...
什么是TeamCity对导致这些错误的TFS / TB采取不同的做法?
任何指针都会非常有用。 干杯
答案 0 :(得分:3)
你可以尝试的事情:
确保您的TFS VCS设置正确,您需要附加TFS VCS根目录,然后使用以下语法添加Checkout规则:
+:path/to/ProjectFolder=>.
+:path/to/libary=>library/path
这将检查Project文件夹中的内容到agent.work.dir / buildNumber以及你的库到agent.work.dir / buildNumber / library / path。
打开Visual Studio并检查对库的引用,然后转到buildmachine并打开/ buildNumber(您将在TeamCity-> Agents->(TeamCityAgent) - >代理参数中找到路径。查找您的库并查看TeamCity已将其签出的位置。
如果安装了VS,也可能有助于在buildmachine(agent.work.dir)/ buildNumber上打开签出的解决方案。你应该看到你的参考文献在哪里
答案 1 :(得分:0)
通常,TeamCity无法找到构建服务器/开发人员系统中存在的内容,但在TeamCity“干净地”重新创建构建环境时不存在。这正是我们使用它的原因,捕捉这些类型的“它建立在我的系统上!”错误。
AxMSACAL项目是否由TeamCity以正确的顺序构建?如果它是第三方组件,它会被TeamCity拉下来吗?