我想在我的所有javascript文件上自动运行JSHINT作为我们持续集成环境的一部分(实际上,可能是TFS Gated Checkin的一部分,但我不确定它是否依赖于速度).
我试过像这样使用rhino-jshint:
java -jar js.jar jshint-rhino.js myFile.js
但是如何设置所需的JSHint选项?我知道我可以在myfile.js顶部的注释中列出它们,但我有很多javascript文件,我不希望所有源文件中的选项都重复. (或者JavaScript是否具有我不知道的“包含”功能?)
我原本希望在命令行中将options.js文件作为参数传递,然后在版本控制下保留options.js.但我不认为jshint-rhino.js可以实现这一点.
此外,我们在保存时使用了Visual studio extension到’JSHint’的所有JavaScript文件.但是这个工具不能在命令行上运行.我们想要两全其美 – 在Visual Studio中运行JSHint和在CI构建中运行Automated,然后不重复选项(并确实在版本控制下保留选项).
所以问题是,其他人如何在开发过程中自动化JSHint?
解决方法:
由于您基本上希望在TFS 2010构建过程中使用命令行活动,因此实际上非常简单.您需要在要运行该工具的位置添加InvokeProcess工作流活动(see MSDN documentation).
实际上有一个walkthrough可用于如何使用不同的命令行实用程序执行此操作,但您只需将其替换为您自己的实用程序.工作流活动甚至允许您指定一组可以传入的命令行参数.