java - 在eclipse中编译elasticsearch

标签 java eclipse elasticsearch gradle compilation

我是 gradle 新手,克隆了 Apache elasticsearch 项目。在过去的 3 天里,我一直在为它苦苦挣扎,但无法在 Eclipse 中进行编译。我想运行它并调试代码以了解它是如何工作的。我已经在终端中成功编译,但无法在 eclipse 中完成。 到目前为止我尝试过的步骤:

  1. 在终端中运行 gradle eclipse 并将其作为现有项目导入到 eclipse 中。现在它开始构建工作区,但我仍然无法运行 ElasticSearch.java 类的主要方法。它说没有可用的主要类型。
  2. 将项目导入为 gradle 项目,但随后抛出异常“无法解析 DependencySubstitutions,这是 gradle 核心 jar 中的一个类。

将其转换为 gradle 项目时抛出异常。

startup failed:
build file      '/Users/rakshitsareen/Development/elasticsearch/build.gradle': 141: unable  to resolve class DependencySubstitutions 
 @ line 141, column 47.
rategy.dependencySubstitution { Dependen
                             ^

1 error

Could not fetch model of type 'HierarchicalEclipseProject' using Gradle   distribution 'https://services.gradle.org/distributions/gradle-2.2.1-bin.zip'.

构建项目时抛出的异常

Errors occurred during the build.
Errors running builder 'Java Builder' on project 'elasticsearch'.
java.lang.NullPointerException

最佳答案

(注意:我必须在这方面做更多的工作。它在某些时候起作用,现在不是)

我知道你的问题已经有两年了,它不是关于 elasticsearch 6.x 的,但是一个搜索引擎把我带到了这里,因为在让 elasticsearch 和 eclipse 和 gradle 工作之前我有点挣扎,这里是我的笔记:

取elasticsearch的contributing readme严重的,它说(对于 elasticsearch 6.x):

For Eclipse, the minimum version that we support is Eclipse Oxygen (version 4.7).

在使用eclipse之前,让gradle为eclipse构建一些东西:

git/elasticsearch $ ./gradlew eclipse

这应该导致 BUILD SUCCESSFUL

现在转到 Help->Eclipse_Marketplace 并搜索 buildship。安装它——它在 eclipse 中启用 gradle 支持。 现在 File->import->gradle 并选择 elasticsearch 的 git repo 的目录。当 Import options 窗口显示时,勾选 Override workspace settings 并将 Java home 指向您的 Java 11 安装(例如“/usr/lib/jvm/java-11-openjdk-amd64/"),它不会用之前的java版本编译。

如果弹出窗口显示“需要 Groovy 开发人员工具”(或左右),请单击 show solutions,这会将您带到市场并显示 groovy dev 插件.安装它。

就是这样!

你可以看到“Gradle tasks”和“Gradle executions”选项卡,在这里你可以执行测试,查看问题等。你可以找到源代码并使用代码助手。您可以设置断点和愉快的调试。

注意:至少对我来说,事情需要时间,特别是因为 eclipse 和 gradle-wrapper 占用了 4 GB 的 RAM,使我的系统进入交换状态。但请耐心等待,它最终会起作用。

关于java - 在eclipse中编译elasticsearch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37035995/

相关文章:

c - Eclipse CDT 在保存时不显示错误和警告

elasticsearch - Elasticsearch:将每个嵌套元素与聚合相乘

java - 如何使用我自己的服务器在 Android 应用程序中设置 cloudboost?

eclipse - 将 tomcat web 项目从 eclipse ganymede 移植到 intellij 8.1

java - 官方教程代码在Eclipse中出现红色波浪线不允许我编译

sorting - 根据嵌套对象的集合对文档进行排序

mongoid - 通过Tire(mongoid4,rails4)插入新文档后,Elasticsearch映射未更新

java - Mac OS X Mavericks 中的多个 Java 安装

java - Spring MVC 链接

java - 在指定端口注册Servlet