首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在进行构建时,如何设置Gendarme与Teamcity一起运行?

在进行构建时,如何设置Gendarme与Teamcity一起运行?
EN

Stack Overflow用户
提问于 2013-05-08 21:32:41
回答 1查看 823关注 0票数 3

我已经设置了一个Teamcity服务器,用于开始使用Continous Integration并进行每日构建,也可以在检测到VCS签入时使用。我和我的团队现在正在开发一款视频游戏,我们使用Unity作为游戏引擎,使用C#作为编程语言。我已经在我们的项目中手动使用了Gendarme,并且可以完全使用它提供的好处。所以我试图让它作为Teamcity的一个构建步骤来运行,但我似乎可以弄清楚如何让它工作。有没有人对这种工具组合有一定的经验?分享的任何经验都是值得欣赏的。

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-17 04:08:20

好吧,最终我找到了一个解决方案,我把它贴在这里,让任何感兴趣的人都能看到。

Teamcity有一个命令行构建步骤,可用于使用Gendarme作为构建过程的一部分(对于我将在此处编写的自定义脚本,您需要将每个.exe放在构建步骤的Workspace属性中)。以下是它所需的控制台命令:

gendarme.exe --v --html Your\Path\To\Save\Report\GendarmeReport.html --severity all --confidence all "Path/To/Your/Project/Library/ScriptAssemblies/Assembly-CSharp.dll" "Path/To/Your/Project/Library/ScriptAssemblies/Assembly-CSharp-firstpass.dll" "Path/To/Your/Project/Library/ScriptAssemblies/Assembly-UnityScript-firstpass.dll"

如果您在Unity build之后运行此构建步骤,则Unity将擦除此处的Assemblies,因此您需要在Gendarme步骤之前执行另一个控制台命令build步骤:

代码语言:javascript
复制
Unity.exe -batchmode -nographics -quit

这将使unity重新生成库文件夹内容,然后运行Gendarme构建步骤将执行trcik。最后,Gendarme有时会在完成报告时抛出1退出代码,但报告已经成功,而且每个规则检查也都成功,所以我认为这可能是一个小错误,根据Gendarme的manpages,当

运行器执行成功,但发现了某些缺陷或未指定程序集。

希望这对其他对此感兴趣的人有所帮助。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16442111

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档