当前位置: 首页 > news >正文

vs简易新闻建设网站网站后期的维护和更新

vs简易新闻建设网站,网站后期的维护和更新,国外 创意 网站,酒店网站html全文速览#xff1a; 1、关于代码编码质量2、如何小成本有效管理企业内的编码规范 2.1 阿里编码规约IDE插件2.2 CheckStyle IDE插件 3、如何在代码提交中检验规范 3.1 阿里编码规约配置git precommit check3.2 CheckStyle配置git precommit check3.3 实践 1、关于代码编码质…全文速览 1、关于代码编码质量2、如何小成本有效管理企业内的编码规范 2.1 阿里编码规约IDE插件2.2 CheckStyle IDE插件 3、如何在代码提交中检验规范 3.1 阿里编码规约配置git precommit check3.2 CheckStyle配置git precommit check3.3 实践 1、关于代码编码质量 关于企业内部如何管控代码规范、保证应用服务质量是一个基础性的问题只要是有技术性要求的项目都应该遵守一套既定的保障应用代码质量的规范。 常规的小成本而有见效的方式就是使用编辑器或者代码规范检测的方式控制代码的提交。提交的代码再依赖组件做人工的code review来把关。 常见的规范扫描工具阿里编码规约扫描、checkStyle。 今天主要描述这两个工具如何在日常编码过程中使用以及如何与git配合来规范代码的提交。 2、如何小成本有效管理企业内的编码规范 2.1 阿里编码规约IDE插件 阿里编码规约扫描是一个成熟的组件我这边使用的是IDEA: 可以直接在插件市场中进行下载Alibaba Java Coding Guidelines如果步骤一存在困难的可以前往github下载源码进行打包(https://github.com/alibaba/p3c)最终打包成包含依赖的jar包我这边构建了一个p3c-pmd-2.1.1-jar-with-dependencies.jar打包后在IDEA中从本地地址导入插件 以上两种方式已经可以成功安装插件只需要【Restart IDE】就可以生效。 重启后在某一个类文件中右击或者在顶部菜单栏【Tools - 阿里编码规约】下就可以发现它点击即可触发扫描。 如果IDE性能有限建议关闭实时检测。 2.2 CheckStyle IDE插件 与阿里编码规约类似也是在插件市场中直接下载重启IDE后生效如果步骤一存在困难可以下载官方打包的release版本然后导入 -- https://github.com/checkstyle/checkstyle/releases?page1。 注意checkStyle与JAVA版本的对应关系否则启动检测你将发现提示has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0。 JRE And JDKRuntime of Checkstyle is limited only by minimal version or JRE. Checkstyle versionJRE version10.x11 and above7.x, 8.x, 9.x8 and above6.x6 and above5.x5 and above 官方文档链接https://checkstyle.sourceforge.io/ 3、如何在代码提交中检验规范 通用流程是一致的两者就是在指令以及输出内容上有所差异一般pre-commit的配置如下 在项目根目录 .git/hooks 下 找到 pre-commit.example文件简单查阅文档内也是会给到一定的提示。cp pre-commit.example pre-commit 生成正式生效的文件 pre-commit下面主要是在这个内部书写检测逻辑大体的一般是 a. 从git的提交数据中获取到修改的文件或目录遍历文件或目录 b. 针对每一项执行检查具体规范具体指定检查出修改项 c. exitcode返回非0不会提交代码。exitcode为0表示通过会提交代码 以下主要展示两者的demo 3.1 阿里编码规约配置git precommit check 指令 java -cp ./p3c-pmd-2.1.1-jar-with-dependencies.jar net.sourceforge.pmd.PMD -d ./Task.java -R rulesets/java/ali-comment.xml,rulesets/java/ali-concurrent.xml,rulesets/java/ali-constant.xml,rulesets/java/ali-exception.xml,rulesets/java/ali-flowcontrol.xml,rulesets/java/ali-naming.xml,rulesets/java/ali-oop.xml,rulesets/java/ali-orm.xml,rulesets/java/ali-other.xml,rulesets/java/ali-set.xml -f text -cp 指定使用的JAR包以及启动类-d 指定需要检测的文件或目录多个文件使用逗号相连-R 指定检测所需的配置文件这些配置文件是alibaba-pmp-p3c项目下默认自带的也可以根据语法自定义-f 指定输出的格式类型支持的输出形式有很多 Available report formats and their configuration properties are:codeclimate: Code Climate integration.csv: Comma-separated values tabular format.problem - Include Problem column default: truepackage - Include Package column default: truefile - Include File column default: truepriority - Include Priority column default: trueline - Include Line column default: truedesc - Include Description column default: trueruleSet - Include Rule set column default: truerule - Include Rule column default: trueemacs: GNU Emacs integration.empty: Empty, nothing.html: HTML formatlinePrefix - Prefix for line number anchor in the source file.linkPrefix - Path to HTML source.ideaj: IntelliJ IDEA integration.classAndMethodName - Class and Method name, pass .method when processing a directory. default: sourcePath - Source path. default: fileName - File name. default: summaryhtml: Summary HTML format.linePrefix - Prefix for line number anchor in the source file.linkPrefix - Path to HTML source.text: Text format.textcolor: Text format, with color support (requires ANSI console support, e.g. xterm, rxvt, etc.).color - Enables colors with anything other than false or 0. default: yestextpad: TextPad integration.vbhtml: Vladimir Bossicard HTML format.xml: XML format.encoding - XML encoding format, defaults to UTF-8. default: UTF-8xslt: XML with a XSL Transformation applied.encoding - XML encoding format, defaults to UTF-8. default: UTF-8xsltFilename - The XSLT file name.yahtml: Yet Another HTML format.outputDir - Output directory.样例 #!/bin/sh # claire# From java package # alicheck version: 2.2.1 # jdk version: 1.8function print(){ echo aliCheck $* }print Javacode stylecheck starting, please wait... wdpwd print Workdir: $wdcheck_jar_path$wd/.git/jars/p3c-pmd-2.1.1-jar-with-dependencies.jar check_xml_pathrulesets/java/ali-comment.xml,rulesets/java/ali-concurrent.xml,rulesets/java/ali-constant.xml,rulesets/java/ali-exception.xml,rulesets/java/ali-flowcontrol.xml,rulesets/java/ali-naming.xml,rulesets/java/ali-oop.xml,rulesets/java/ali-orm.xml,rulesets/java/ali-other.xml,rulesets/java/ali-set.xml check_result_file$wd/temp# 清空temp文件 rm -rf $check_result_fileis_err0 is_warn0path for file in git status --porcelain | sed s/^...// | grep \.java$ | grep -v test; do path$wd/$file done if [ x${path} ! x ];thenprint Check file: $pathrejava -cp $check_jar_path net.sourceforge.pmd.PMD -d $path -R $check_xml_path -f text $check_result_fileerrcat temp | grep va:err_countcat temp | grep va: | wc -lif [[ $err *va:* ]];thenprint detect error lines count: ${err_count}print ${err}is_err1fi fi print Javacode stylecheck finished. Thank you for your commit!rm -rf $check_result_fileif [ $is_err -ne 0 ] || [ $is_warn -ne 0 ] then print Please return and fix stylecheck warnings before code commit exit 1 fiexit 03.2 CheckStyle配置git precommit check 指令java -jar ./checkstyle-8.45-all.jar -c ./checkStyle.xml /Task.java -f text -o outputTempFile -jar 指定checkstyle jar包位置-c 指定检查的配置文件 后面紧跟要检查的文件或目录-f 指定输出的格式类型 有XML, SARIF, PLAIN-o 指定输出检查结果的位置默认不指定是输出到终端 样例 #!/bin/sh # claire# From java package # checkStyle version: 8.45 # jdk version: 1.8function print(){ echo checkStyle $* }print Javacode stylecheck starting, please wait... wdpwd print Workdir: $wdcheck_jar_path$wd/.git/jars/checkstyle-8.45-all.jar check_xml_path$wd/.git/files/checkStyle.xml check_result_file$wd/temp# 清空temp文件 rm -rf $check_result_fileis_err0 is_warn0path for file in git status --porcelain | sed s/^...// | grep \.java$ | grep -v test; do path$wd/$file done if [ x${path} ! x ];thenprint Check file: $pathrejava -jar $check_jar_path -c $check_xml_path $path -f plain -o $check_result_fileerrcat temp | grep ERRORerr_countcat temp | grep ERROR | wc -lwarncat temp | grep WARNwarn_countcat temp | grep WARN | wc -linfocat tempif [[ $err *ERROR* ]];thenprint detect error lines count: ${err_count}print ${err}is_err1fiif [[ $warn *WARN* ]];thenprint detect warning lines count: ${warn_count}print ${warn}is_warn1fi fi print Javacode stylecheck finished. Thank you for your commit!rm -rf $check_result_fileif [ $is_err -ne 0 ] || [ $is_warn -ne 0 ] then print Please return and fix stylecheck warnings before code commit exit 1 fiexit 03.3 实践 以上任意一款git pre commit 配置完成后 git add .git commit -m “test” 提交后就会开启代码检测如果存在拦截的逻辑就无法继续commit aliCheck: git commit -m test1 aliCheck Javacode stylecheck starting, please wait... aliCheck Workdir: xxxx aliCheck Check file: xxxx/Task.java aliCheck detect error lines count: 4 aliCheck xxx/Task.java:64: 方法名【UUUSE2345789】不符合lowerCamelCase命名风格 aliCheck Javacode stylecheck finished. Thank you for your commit! aliCheck Please return and fix stylecheck warnings before code commitcheckStyle: git commit -m test2 checkStyle Javacode stylecheck starting, please wait... checkStyle Workdir: XXX checkStyle Check file: xxx/Task.java Checkstyle ends with 28 errors. checkStyle detect error lines count: 28 checkStyle [ERROR] xxx/Task.java:3: Not allow chinese character ! [RegexpSingleline] ...... [ERROR] xxx/Task.java:71:29: is not preceded with whitespace. [WhitespaceAround] checkStyle Javacode stylecheck finished. Thank you for your commit! checkStyle Please return and fix stylecheck warnings before code commit
http://www.zqtcl.cn/news/454906/

相关文章:

  • 现在建设网站赚钱吗wordpress简约博客主题
  • 扬州网站商城建设价格凡科互动游戏作弊
  • 嘉定企业网站制作中国空间雷达卫星
  • dw做一个小网站教程厦门seo小谢
  • 江苏国龙翔建设公司网站济南百度推广公司
  • 北京理工大学网站网页设计html手册
  • 智能建站大师官网平台招聘页面设计模板
  • 网页制作三剑客不包括优化关键词推广
  • 济南设计网站中盛浩瀚建设有限公司网站
  • 做袜子娃娃的网站wordpress 文章卡片
  • 网站建设的相关新闻做网站需准备些什么问题
  • 深圳一建公司地址安徽网络seo
  • 永州网站建设gwtcms爱网站无法登录怎么回事
  • 常用于做网站的软件优质网站建设哪家好
  • 网站怎么做响应网络营销怎么做有特色
  • 电子商务企业网站的推广方式正邦设计怎么样
  • 哪个网站可以免费下载ppt模板简述网站开发的过程
  • 中国商标注册网官方网站广东网站建设包括什么软件
  • 个人如何做网站软件企业网站制作设
  • 无锡百度公司王东百度免费优化
  • 做移动网站快速排名软件正能量网站网址大全
  • 网站横幅代码山东省住房和城乡建设厅电话号码
  • 营销模式有哪些seo点击软件哪个好用
  • 信息流网站建设做网站换服务器怎么整
  • html5网站编写wordpress同步到本地
  • php商城网站开发工业设计在线
  • 网站建设发布实训总结网站自适应代码
  • 网站建设与管理是什么摄影网站 蜂鸟
  • 廊坊做网站的大公司wordpress+主题加速
  • 做网站还能挣钱吗网页端