背景
最近想做静态代码扫描,先用jenkins+findbugs做了服务端的java代码静态代码扫描自动化,前端的静态代码扫描工具挺多人推荐eslint,于是使用并记录问题,命令行调用接入jenkins自动化也很简单。
安装与使用
- 安装eslint,在根目录下执行:
npm install eslint --save-dev
- 然后初始化
/Users/XXX/node_modules/.bin/eslint —init
- 执行静态代码检查
/Users/XXX/node_modules/.bin/eslint 文件名(支持通配符)
e.g.
/Users/XXX/node_modules/.bin/eslint /Users/XXX/WebDriverAgent/Inspector/node_modules/inquirer/node_modules/lodash/*
- 对于不想检查的文件,可以在根目录下新建一个.eslintignore文件列出:
test/**
.js
app/index.html
app/static/*
——————————————————————————
遇到的问题:
-
如果没有package.json包,需要执行npm init命令生成文件,否则各种npm install会报错。
-
报各种插件没有,安装吧。
npm i eslint-plugin-babel@latest --save-dev
npm i eslint-plugin-flowtype@latest --save-dev
npm install babel-eslint -g
-
报npm warn package.json @1.0.0 no repository field错误,是由于缺少repository远程仓库配置,不想配远程仓库的话,按照下面配置成私有项目可以解决:
根目录下vi package.json
添加一行"private": true配置远程仓库则需要添加下列配置:
"repository": {
"type": "git",
"url": "http://git.com"
}
网友评论