openLooKeng开发环境搭建

2024-03-30 22:20

本文主要是介绍openLooKeng开发环境搭建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 搭建OpenLooKeng开发环境
    • 要求
  • 以下是搭建OpenLooKeng开发环境的基本步骤:
    • 1、从OpenLooKeng的GitHub仓库克隆代码:
    • 2、 构建OpenLooKeng
    • 生成IntelliJ IDEA项目文件
  • airbase
  • 构建项目过程中出现的问题
    • checkstyle错误
    • 版本冲突问题hetu-heuristic-index: Some Enforcer rules have failed


搭建OpenLooKeng开发环境

在搭建OpenLooKeng开发环境之前,需要确保你的机器上安装了Java Development Kit (JDK) 8以上版本,因为OpenLooKeng是用Java编写的。

要求

Mac OS X或Linux
Java 8 Update 161或更高版本(8u161+)(64位)。同时支持Oracle JDK和OpenJDK。
AArch64 (Bisheng JDK 1.8.262 或更高版本)
Maven 3.3.9+(用于构建)
Python 2.4+(与启动器脚本一起运行)

以下是搭建OpenLooKeng开发环境的基本步骤:

1、从OpenLooKeng的GitHub仓库克隆代码:

git clone https://github.com/openlookeng/openlookeng.git

进入代码目录:

cd openlookeng

确保安装了Maven,用于构建项目:

2、 构建OpenLooKeng

构建OpenLooKeng:

mvn clean install -DskipTests

如果你想要开发或修改OpenLooKeng的代码,你可能需要配置IDE以便于开发,例如使用IntelliJ IDEA:

生成IntelliJ IDEA项目文件

mvn idea:idea

然后用IntelliJ IDEA打开项目。
在这里插入图片描述

这些步骤提供了一个基本的开发环境,你可以在此基础上进行代码的开发和测试。具体的开发活动,比如修改代码、添加功能等,需要根据项目具体情况和开发文档来执行。

airbase

<parent>  <groupId>io.airlift</groupId>  <artifactId>airbase</artifactId>  <version>97</version>  
</parent>

openLooKeng 项目继承自 io.airlift 组织的 airbase 项目,版本为 97。airbase 是 Airlift 公司提供的一个基础构建工具集,它包含了一系列 Maven 插件、依赖管理和其他配置,旨在帮助 Java 开发者更容易地创建、维护和发布 Maven 项目。

通过在项目中包含这个 元素,openLooKeng将继承 airbase POM 中定义的所有配置。这通常包括编译设置、依赖管理、插件配置等。这有助于确保您的项目遵循 Airlift 的最佳实践,并与其他使用 airbase 的项目保持一致性。

当您构建或安装您的 Maven 项目时,Maven 会首先解析父 POM,并将父 POM 中的配置应用到当前项目中。这样,您就可以专注于您项目的特定配置,而不必重复设置那些已经在父 POM 中定义好的通用配置。故openLooKeng很多默认配置都是继承自airbase 。
airbase 将maven检查分为两组:基本组和扩展组

GroupCheckSkip check (Setting to true skips the check)Fail build (Setting to false only reports a warning)
BasicMaven Enforcerair.check.skip-enforcerair.check.fail-enforcer
BasicMaven Dependenciesair.check.skip-dependencyair.check.fail-dependency
BasicMaven Duplicate finderair.check.skip-duplicate-finderair.check.fail-duplicate-finder
BasicMaven Dependency scopeair.check.skip-dependency-scopeair.check.fail-dependency-scope
ExtendedSpotBugsair.check.skip-spotbugsair.check.fail-spotbugs
ExtendedPMDair.check.skip-pmdair.check.fail-pmd
ExtendedLicense checkair.check.skip-licenseair.check.fail-license
ExtendedCode coverageair.check.skip-jacocoair.check.fail-jacoco
ExtendedModernizerair.check.skip-modernizerair.check.fail-modernizer
ExtendedCheckstyleair.check.skip-checkstyleair.check.fail-checkstyle

构建项目过程中出现的问题

构建项目过程中的问题大部分与airbase 的配置相关

checkstyle错误

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-checkstyle-plugin:3.1.0:check (checkstyle) on project presto-array: You have 2 Checkstyle violations. -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn -rf :presto-array

解决办法
在根 pom.xml增加<air.check.skip-checkstyle>true</air.check.skip-checkstyle> 忽略checkstyle问题

    <properties><air.main.basedir>${project.basedir}</air.main.basedir><air.check.skip-spotbugs>true</air.check.skip-spotbugs><air.check.skip-pmd>true</air.check.skip-pmd><air.check.skip-jacoco>true</air.check.skip-jacoco><air.check.skip-checkstyle>true</air.check.skip-checkstyle>.......</properties>

版本冲突问题hetu-heuristic-index: Some Enforcer rules have failed

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce (default) on project hetu-heuristic-index: Some Enforcer rules have failed. Look above for specific messages explaining why the rule failed. -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn -rf :hetu-heuristic-index

解决办法:

在根 pom.xml增加<air.check.skip-enforcer>true</air.check.skip-enforcer>

    <properties><air.main.basedir>${project.basedir}</air.main.basedir><air.check.skip-spotbugs>true</air.check.skip-spotbugs><air.check.skip-pmd>true</air.check.skip-pmd><air.check.skip-jacoco>true</air.check.skip-jacoco><air.check.skip-checkstyle>true</air.check.skip-checkstyle><air.check.skip-enforcer>true</air.check.skip-enforcer>....................</properties>

这篇关于openLooKeng开发环境搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/862730

相关文章

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Python极速搭建局域网文件共享服务器完整指南

《Python极速搭建局域网文件共享服务器完整指南》在办公室或家庭局域网中快速共享文件时,许多人会选择第三方工具或云存储服务,但这些方案往往存在隐私泄露风险或需要复杂配置,下面我们就来看看如何使用Py... 目录一、android基础版:HTTP文件共享的魔法命令1. 一行代码启动HTTP服务器2. 关键参

PyQt5 GUI 开发的基础知识

《PyQt5GUI开发的基础知识》Qt是一个跨平台的C++图形用户界面开发框架,支持GUI和非GUI程序开发,本文介绍了使用PyQt5进行界面开发的基础知识,包括创建简单窗口、常用控件、窗口属性设... 目录简介第一个PyQt程序最常用的三个功能模块控件QPushButton(按钮)控件QLable(纯文本

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本

基于Python开发一个图像水印批量添加工具

《基于Python开发一个图像水印批量添加工具》在当今数字化内容爆炸式增长的时代,图像版权保护已成为创作者和企业的核心需求,本方案将详细介绍一个基于PythonPIL库的工业级图像水印解决方案,有需要... 目录一、系统架构设计1.1 整体处理流程1.2 类结构设计(扩展版本)二、核心算法深入解析2.1 自

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

SQLite3 在嵌入式C环境中存储音频/视频文件的最优方案

《SQLite3在嵌入式C环境中存储音频/视频文件的最优方案》本文探讨了SQLite3在嵌入式C环境中存储音视频文件的优化方案,推荐采用文件路径存储结合元数据管理,兼顾效率与资源限制,小文件可使用B... 目录SQLite3 在嵌入式C环境中存储音频/视频文件的专业方案一、存储策略选择1. 直接存储 vs