elasticsearch-hadoop.jar 6.8版本编译异常

背景

重新编译 elasticsearch-hadoop 包;

GitHub - elastic/elasticsearch-hadoop at 6.8

编译 7.17 版本时很正常,注意设置下环境变量就好,JAVA8_HOME/....

编译 6.8 版本时(要求jdk8 / jdk9),出现异常

  1. Could not resolve org.springframework.build.gradle:propdeps-plugin:0.0.7.

  2. Could not resolve cascading:cascading-local:2.6.3.

  3. Could not resolve org.elasticsearch.gradle:build-tools:6.8.24-SNAPSHOT

  4. Could not resolve cascading:cascading-hadoop:2.6.3.

分析(尝试逐个解决)

  1. gradle 仓库修改

    复制代码
     // ali库 解决 Could not resolve org.springframework.build.gradle:propdeps-plugin:0.0.7.
     maven{ url 'https://maven.aliyun.com/repository/central'}
     maven{ url 'https://maven.aliyun.com/repository/public' }
     maven{ url 'https://maven.aliyun.com/repository/google'}
     maven{ url 'https://maven.aliyun.com/repository/gradle-plugin'}
     maven{ url 'https://maven.aliyun.com/repository/spring'}
     maven{ url 'https://maven.aliyun.com/repository/spring-plugin'}
     maven{ url 'https://maven.aliyun.com/mvn/guide'}
     maven{ url 'https://maven.aliyun.com/repository/apache-snapshots'}
  2. esh-version.properties 修改

6.8.24-SNAPSHOT -> 6.8.23

  1. cascading-local 这个包始终无法获取

最终解决

本质原因有2个,一个是 repo.spring.io 改造成需要验证了,不验证会有401;另一个是http://conjars.org/repo 已经失效了,需要替换;

所以前面修改的全部回滚,完整解决方案如下:

  1. 处理 propdeps-plugin 包,增加阿里云的库

    复制代码
     // ali库 propdeps-plugin
     maven{ url 'https://maven.aliyun.com/repository/central'}
     maven{ url 'https://maven.aliyun.com/repository/public' }
     maven{ url 'https://maven.aliyun.com/repository/google'}
     maven{ url 'https://maven.aliyun.com/repository/gradle-plugin'}
     maven{ url 'https://maven.aliyun.com/repository/spring'}
     maven{ url 'https://maven.aliyun.com/repository/spring-plugin'}
     maven{ url 'https://maven.aliyun.com/mvn/guide'}
     maven{ url 'https://maven.aliyun.com/repository/apache-snapshots'}
  2. 修改 buildSrc/src/main/groovy/org/elasticsearch/hadoop/gradle/BuildPlugin.groovy

    全部的 http://conjars.org/repo 或者 https://conjars.org/repo

    替换成 https://conjars.wensel.net/repo

参考:

  1. Notice of Permissions Changes to repo.spring.io, January 2023

  2. https://segmentfault.com/q/1010000043853512

  3. spring源码编译问题解决1,Received status code 401 from server问题,not found问题,更换阿里云镜像_received status code 401 from server:-CSDN博客

  4. https://github.com/elastic/elasticsearch-hadoop/issues/984

  5. How to build a plugin for a not yet released version? - Elasticsearch - Discuss the Elastic Stack

  6. conjars.org: Connection timed out_http://conjars.org/repo 地址失效-CSDN博客

相关推荐
Han.miracle3 小时前
Elasticsearch深度分页问题完整解析
大数据·elasticsearch·搜索引擎
深海鱼肝油ya4 小时前
向量数据库Elasticsearch(一)
人工智能·elasticsearch·向量数据库·es数据库增加索引·es数据库相似度查询·knn查询
大模型丫丫5 小时前
工业级 RAG 为什么需要 Elasticsearch?
elasticsearch·django·jenkins
BYSJMG7 小时前
大数据毕业设计选题推荐:基于大数据的全球气温历史演变分析与可视化,用Hadoop+Spark处理
大数据·hadoop·分布式·信息可视化·spark·kmeans·课程设计
fastjson_7 小时前
Hive 自定义函数
数据仓库·hive·hadoop
Sayai12 小时前
Elasticsearch 9 安装验证实战:start-local 一键部署 + Docker 手动安装踩坑指南
大数据·elasticsearch·docker
瑞码空间21 小时前
git知识点黄金笔记
笔记·git·elasticsearch
切糕师学AI1 天前
如何查看已合并到 master 分支的所有分支?Git 分支清理指南
大数据·git·elasticsearch
suaizai_1 天前
从1210条报错到全自动修复:AI闭环运维实战
大数据·elasticsearch·搜索引擎
Elastic 中国社区官方博客1 天前
不再有分配延迟:在无状态 Elasticsearch 中将快照与分片迁移解耦
大数据·运维·人工智能·elasticsearch·搜索引擎·全文检索