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

项目实训1——数据开发部分の技术选型 环境搭建

CodeQ是一个面向代码数据整理与分析场景的代码质量评估平台,主要解决在收集大规模开源代码时,难以快速判断代码质量高低的问题。在大模型训练或代码分析任务中,低质量代码(如结构混乱、注释缺失、复杂度过高)会直接影响后续模型效果,但目前多数筛选仍依赖人工经验或简单规则,效率较低。

本项目以 GitHub 开源仓库为主要数据来源,用户输入仓库地址后,系统自动完成代码拉取、解析和基础质量分析,并给出多维度的质量评估结果。平台重点关注代码可读性、复杂度、规范性和维护性等可量化指标,而不是试图给出“绝对好坏”的主观判断。

在实现过程中,项目采用分布式数据处理框架对仓库中的代码文件进行批量解析,提取如函数长度、圈复杂度、注释率等结构化特征,并基于这些特征训练代码质量分类模型。评估结果通过 Web 页面进行展示,支持按仓库和文件维度查看分析结果,并辅助定位可能存在问题的代码区域。

本项目的目标并非构建通用商业级平台,而是通过完整实现“数据采集—特征工程—模型训练—系统展示”这一流程,完成一次贴近真实工程场景的综合实践,为后续从事数据工程或 AI 相关方向打下基础

技术选型介绍

由于需要批量拉去github的仓库内容进行分析,涉及到的文件量较大;且由于项目对实时性要求不高,因此采用Spark对仓库代码分析模块进行操作。

考虑到与SpringBoot2.7.0的兼容性,此次Spark的环境为:

Spark3.0

Scala2.12.10

Java11

Hadoop3.34

环境搭建

该项目的数据开发部分与原项目使用模块相同,因此采用以下promt,让trae根据原有的pom.xml进行新项目的构建:

请帮我从原有项目读取pom.xml配置,并基于这些配置创建新的GitHub代码质量分析项目。 ## 原项目信息 - 原项目根目录:D:\develop\project\logAnalysisJob - 原项目包含以下pom文件: - 根pom:D:\develop\project\logAnalysisJob\pom.xml - backend子模块:D:\develop\project\logAnalysisJob\backend\pom.xml ## 新项目信息 - 新项目路径:D:\develop\project\githubCodeAnalysisJob - 技术栈要求: - Java 11 - Scala 2.12.10 - Spark 3.0.0(使用spark-core、spark-sql、spark-mllib,不使用spark-streaming) - Spring Boot 2.7.0 - MySQL 8.0 ## 需要完成的任务 ### 第一步:读取并分析原项目配置 1. 读取原项目根pom.xml(D:\develop\project\logAnalysisJob\pom.xml),提取: - 所有properties中的版本号(scala.version、spark.version、spring-boot.version等) - dependencyManagement中的所有依赖定义 - pluginManagement中的所有插件配置 2. 读取原项目backend/pom.xml(D:\develop\project\logAnalysisJob\backend\pom.xml),提取: - Spring Boot相关依赖配置 ### 第二步:创建新项目目录结构 在新项目路径下创建以下目录: D:\develop\project\githubCodeAnalysisJob ├── pom.xml ├── common ├──>## 项目环境配置信息 ### 环境变量路径 - JAVA_HOME: D:\Java\jdk-11.0.15.1 - MAVEN_HOME: D:\develop\apache-maven-3.6.3 - HADOOP_HOME: D:\develop\hadoop-3.3.4 - GITHUB_TOKEN: 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 ### 项目路径 - 项目根目录: D:\develop\project\githubCodeAnalysisJob ### 注意事项 - SCALA_HOME: 不需要设置(Maven插件管理) - SPARK_HOME: 不需要设置(通过Maven依赖引入) - HADOOP_HOME已配置,用于解决Windows下Spark读写本地文件的问题 ### 验证命令 ```bash java -version mvn -version hadoop version

项目环境搭建后的目录如下:

环境测试

基础环境测试

基于以下的promt,对配置好的环境进行测试,该测试为极简测试,包含:清理、编译、打包:

请帮我执行以下命令验证 D:\develop\project\githubCodeAnalysisJob 项目: 1. mvn clean compile 2. mvn test-compile 3. mvn package -DskipTests 请输出每个命令的执行结果,如果有失败请指出具体模块和错误原因。

这是测试结果:

进行简单的Spark任务测试(基于SparkSQL)

promt如下:

## 测试2:Spark SQL功能测试 请读取 D:\develop\trae\env_config.txt 中的环境配置,然后测试Spark SQL功能: 在 />

总结

基于上述搭建 & 测试,该项目数据开发的基础环境已经部署成功。下一篇将对github爬虫API + SparkSQL分析进行测试。

http://www.jsqmd.com/news/610372/

相关文章:

  • 别只写Chat接口了!用Spring AI 1.2.0玩点花的:5分钟搞定PDF总结和图片描述生成
  • Word 兼容模式下公式编辑失效的排查与修复指南
  • 四川CIK细胞服务机构优质推荐榜 - 优质品牌商家
  • 2026聚丙烯酰胺厂家怎么选?从参数到服务的全维度指南 - 优质品牌商家
  • Markdown 表格转 PDF 工具已上线,轻松解决 Markdown 表格导出难题
  • 2026/4/8
  • 三极管开关原理与工程应用指南
  • 在 Linux 中明明看到文件夹存在,但执行命令时提示“No such file or directory”
  • OpenClaw创意生成:Phi-3-mini-128k-instruct辅助短视频脚本创作
  • 小白量化智能体入门:从通达信公式到Python策略的保姆级教程
  • 告别细胞核局限:手把手教你用Cellpose的cyto模型分割Visium HD图像,获取更完整的单细胞空间表达谱
  • 微信机器人demo
  • 【数值分析】有限元法(FEM)数值不稳定性分析:$L^2$ 与 $H_0^1$ 空间的对比实验
  • 从基础到前沿应用,解开焊锡膏与激光结合的新技术原理
  • 筑牢代码安全基石:GB/T 34943/34944 标准详解与库博静态分析工具的全面支持
  • 同轴光源:揭秘机器视觉中的高精度成像秘密武器
  • 别再只盯着Arduino了!用ESP32驱动24BYJ48步进电机,做个智能窗帘控制器(附完整代码)
  • 第6章 黎曼流形优化与几何方法
  • OpenClaw边缘计算:Qwen3.5-9B-AWQ-4bit树莓派部署实测
  • AI 时代:祛魅、适应与重新定义夏
  • 数据结构之线段树(Segment Tree)
  • 安全危机!
  • 移动气象站 屏幕款便携式自动气象站
  • 2026室内甲醛净化技术解析:靠谱服务商怎么选? - 优质品牌商家
  • 节能模式配置:OpenClaw调用Qwen3-32B-Chat镜像的GPU功耗优化
  • SliderQuant: Accurate Post-Training Quantization for LLMs
  • OpenClaw自动化创作:Phi-3-vision-128k-instruct实现图文内容一键生成
  • 嵌入式轻量级RPC实现:裸机与RTOS下的远程过程调用
  • 别再死记硬背AXI时序了!用Vivado Block Design搭个玩具,看波形秒懂握手协议
  • 告别ArcGIS!用GEE+QGIS搞定流域DEM下载与地形分析(附完整代码)