当前位置:网站首页>airbase 初步分析
airbase 初步分析
2022-04-23 20:50:00 【weixin_40455124】
presto是主要基于把airbase作为parent 进行各种check及管理基础dependency的版本。
基本结构

airbase root 本身有两个项目
- policy 保存check规则
- airbase 各种maven plugin 及依赖库版本定义
airbase maven plugin及跳过
pom.xml build部分包括了大量plugin,从代码风格、依赖分析、编译等等,总之想通过maven对代码做什么依赖,都可以来参考airbase,可以通过在子项目的pom.xml properties部分设置以下check为true跳过各种check的执行或者忽略失败。
<!-- Controls all the checkers run when building the project. -->
<!-- Can be activated with -Dair.check.skip-all=true on the command line. -->
<air.check.skip-all>false</air.check.skip-all>
<!-- Controls the basic checkers run when building the project. -->
<air.check.skip-basic>${air.check.skip-all}</air.check.skip-basic>
<!-- Controls the extended checkers run when building the project. -->
<air.check.skip-extended>${air.check.skip-all}</air.check.skip-extended>
<!-- basic checks -->
<air.check.skip-enforcer>${air.check.skip-basic}</air.check.skip-enforcer>
<air.check.skip-dependency>${air.check.skip-basic}</air.check.skip-dependency>
<air.check.skip-duplicate-finder>${air.check.skip-basic}</air.check.skip-duplicate-finder>
<air.check.skip-dependency-scope>${air.check.skip-basic}</air.check.skip-dependency-scope>
<!-- extended checks -->
<air.check.skip-spotbugs>${air.check.skip-extended}</air.check.skip-spotbugs>
<air.check.skip-pmd>${air.check.skip-extended}</air.check.skip-pmd>
<air.check.skip-license>${air.check.skip-extended}</air.check.skip-license>
<air.check.skip-jacoco>${air.check.skip-extended}</air.check.skip-jacoco>
<air.check.skip-modernizer>${air.check.skip-extended}</air.check.skip-modernizer>
<air.check.skip-checkstyle>${air.check.skip-extended}</air.check.skip-checkstyle>
<!-- all checks -->
<air.check.fail-all>true</air.check.fail-all>
<air.check.fail-basic>${air.check.fail-all}</air.check.fail-basic>
<air.check.fail-extended>${air.check.fail-all}</air.check.fail-extended>
<!-- basic checks -->
<air.check.fail-enforcer>${air.check.fail-basic}</air.check.fail-enforcer>
<air.check.fail-dependency>${air.check.fail-basic}</air.check.fail-dependency>
<air.check.fail-duplicate-finder>${air.check.fail-basic}</air.check.fail-duplicate-finder>
<air.check.fail-dependency-scope>${air.check.fail-basic}</air.check.fail-dependency-scope>
<!-- extended checks -->
<air.check.fail-spotbugs>${air.check.fail-extended}</air.check.fail-spotbugs>
<air.check.fail-pmd>${air.check.fail-extended}</air.check.fail-pmd>
<air.check.fail-license>${air.check.fail-extended}</air.check.fail-license>
<air.check.fail-modernizer>${air.check.fail-extended}</air.check.fail-modernizer>
<air.check.fail-checkstyle>${air.check.fail-basic}</air.check.fail-checkstyle>
dependency 依赖定义
airbase还定义了大量依赖版本,因此升级presto的时候需要考虑所有presto依赖lib也是要相同airbase 版本,以下为com.facebook.airlift 102版本的依赖。
<!-- Dependency versions that should be the same everywhere. -->
<dep.guice.version>4.2.2</dep.guice.version>
<dep.guava.version>26.0-jre</dep.guava.version>
<dep.slf4j.version>1.7.25</dep.slf4j.version>
<dep.logback.version>1.2.3</dep.logback.version>
<dep.javax-inject.version>1</dep.javax-inject.version>
<dep.javax-validation.version>2.0.1.Final</dep.javax-validation.version>
<dep.javax-servlet.version>3.1.0</dep.javax-servlet.version>
<dep.bval.version>2.0.0</dep.bval.version>
<dep.jackson.version>2.10.0</dep.jackson.version>
<dep.jmxutils.version>1.19</dep.jmxutils.version>
<dep.cglib.version>3.2.5</dep.cglib.version>
<dep.joda.version>2.9.9</dep.joda.version>
<dep.spotbugs-annotations.version>3.1.10</dep.spotbugs-annotations.version>
<dep.testng.version>6.9.6</dep.testng.version>
<dep.assertj-core.version>3.5.2</dep.assertj-core.version>
<dep.assertj-guava.version>3.1.0</dep.assertj-guava.version>
<dep.assertj-joda-time.version>2.0.0</dep.assertj-joda-time.version>
<dep.assertj-db.version>1.1.1</dep.assertj-db.version>
<dep.hamcrest.version>1.3</dep.hamcrest.version>
<dep.mockito.version>1.9.5</dep.mockito.version>
<dep.objenesis.version>1.3</dep.objenesis.version>
<dep.slice.version>0.34</dep.slice.version>
<dep.jmh.version>1.20</dep.jmh.version>
版权声明
本文为[weixin_40455124]所创,转载请带上原文链接,感谢
https://radishgz.blog.csdn.net/article/details/124336084
边栏推荐
- Bash script learning -- for loop traversal
- MySQL进阶之数据的增删改查(DML)
- 一些接地气的话儿
- 软件测试要怎么学?自学还是培训看完这篇文章你就懂了
- Addition, deletion, modification and query of advanced MySQL data (DML)
- Pikachuxss how to get cookie shooting range, always fail to return to the home page
- Solution: NPM err! code ELIFECYCLE npm ERR! errno 1
- PHP的Laravel与Composer部署项目时常见问题
- Awk example skills
- Minecraft 1.12.2模组开发(四十三) 自定义盾牌(Shield)
猜你喜欢

Come in and teach you how to solve the problem of port occupation

Latex formula

Some grounded words

How to use PM2 management application? Come in and see

Identifier CV is not defined in opencv4_ CAP_ PROP_ FPS; CV_ CAP_ PROP_ FRAME_ COUNT; CV_ CAP_ PROP_ POS_ Frames problem

Addition, deletion, modification and query of MySQL advanced table

Keywords static, extern + global and local variables

Write table of MySQL Foundation (create table)

Sharpness difference (SD) calculation method of image reconstruction and generation domain index

Preliminary understanding of cache elimination algorithm (LRU and LFU)
随机推荐
go defer
引入结构化并发,Swift 5.5 发布!
Come in and teach you how to solve the problem of port occupation
Unity solves Z-fighting
An error occurs when the addressable assets system project is packaged. Runtimedata is null
go reflect
Resolve the error - error identifier 'attr_ id‘ is not in camel case camelcase
Bash script learning -- for loop traversal
Vulnhub DC: 1 penetration notes
3-5 obtaining cookies through XSS and the use of XSS background management system
pytorch 1.7. The model saved by X training cannot be loaded in version 1.4 or earlier
Learn to C language fourth day
Mysql database common sense storage engine
How to use PM2 management application? Come in and see
How to learn software testing? Self study or training? After reading this article, you will understand
How to do after winning the new debt? Is it safe to open an account online
C#,打印漂亮的贝尔三角形(Bell Triangle)的源程序
一些接地气的话儿
Opencv reports an error. Expected PTR < CV:: UMAT > for argument '% s'‘
深入探究ASP.NET Core读取Request.Body的正确方式