T0-ES|T0-ES 6.1.4 Gradle build & import to IDEA
Overview
在es 5.X及之后的版本中,包管理框架从Maven迁移到了Gradle。
- 在Maven导入IDEA的过程中,不需要一些命令行,因为idea的reimport按钮会自动download jar包以及建立索引。
- 而在Gradle中,这个转换过程与mvn有所不同,需要在导入(import project)之前进行一些gradle命令行操作,如下,
- groovy install
- gradle install
- 配置系统环境变量GRADLE_USER_HOME,以便自定义gradle下载的jar包存放位置
- cd yourDir/es614
- git clone --depth 1 --branch v6.1.4 https://github.com/elastic/elasticsearch.git
- cd elasticsearch
- gradle clean --parallel
- gradle idea -Dhttp.proxyHost=proxy.your.com -Dhttp.proxyPort=8080 -Dhttps.proxyHost=proxy.your.com -Dhttps.proxyPort=8080 --parallel(不要带http://)
- gradle build -x test --parallel
- IDEA import
build.gradle
文章图片
gradle idea begin
文章图片
gradle idea end
文章图片
gradle build begin 【T0-ES|T0-ES 6.1.4 Gradle build & import to IDEA】gradle build过程中一直加载、编译modules和plugins。
文章图片
gradle build mid 上图,在命令行里指定了-x test来跳过测试了,不知道为什么还运行这个main(),这里需要再观察。
文章图片
gradle build end 上图,虽然最后build failed了,但是将被gradle编译过的es导入到idea之后,还是能够正常显示类关系,即被源码关系链索引好了。
文章图片
idea import project
文章图片
import build.gradle Result
文章图片
索引后的源码目录
文章图片
external libraries第三方库 遗留问题
- gradle build -x test的
失效
- gradle build的
BUILD FAILED
- 为什么没有选择最新的v6.2.4。是由于minimumCompilerVersion的限制。(服务器运行可以是jdk8,但是编译要更新版本的jdk。6.2.x是jdk9;6.3.x是jdk10)
文章图片
es tag till 20180508
文章图片
BuildPlugin.groovy Reference
- Elasticsearch5.5.0源码-编译、导入IDEA、启动
- ElasticStack系列之十六 & ElasticSearch5.x index/create 和 update 源码分析
- gradle命令参数
- gradle 命令及技巧 (gradle-tips)
推荐阅读
- Android|Android gradle打包涉及task源码解析(五)
- 网络请求,如斯优雅
- Gradle基础
- 跑测试速度对比
- Gradle任务
- 关于Gradle那些事
- Gradle下载安装教程
- 更快的Maven构建工具mvnd和Gradle哪个更快()
- 使用整洁架构优化你的|使用整洁架构优化你的 Gradle Module
- 组件发布效率提升15倍是怎么做到的——基于Gradle调度机制深度研究与优化