在IntelliJ中运行/调试ElasticSearch

10

有没有一种方法可以在IntelliJ中实时调试ElasticSearch服务器? 我没有使用过Maven。 我的目标是在运行时进行调试和检查变量和执行流程。


1
请参见:https://dev59.com/4Jjga4cB1Zd3GeqPGi-t - Alexander Marquardt
2个回答

9

好的,找到了。使用 IntelliJ 的运行菜单添加一个新的运行配置。

  • 运行
  • 编辑配置
  • +
  • Main class 设置为 org.elasticsearch.bootstrap.Bootstrap
  • VM options 设置为 -Des.foreground=yes

完成。 来源


2
或者只需启动“ElasticsearchF”类,更加简单。 - javanna
3
2.x的更新答案是什么?ElasticsearchF似乎已经不存在了,而Bootstrap也没有主方法。 - Jeff Evans

3

您没有表明您是要调试/步入Elastic Search(ES)客户端还是服务器代码。

对于客户端代码

只要源代码已经附加,您就可以进行调试。如果您使用的是Maven,则可以请求它下载并附加源代码,假设它们在Maven中央库中可用。(Elastic Search确实将其源代码部署到maven中央库中,所以您应该可以从中受益。 如果没有,您就必须在“项目结构”对话框中“手动”附加源JAR。)

为了让maven下载和附加源代码,请打开maven工具窗口并单击“Download…”按钮 enter image description here,然后选择Download SourcesDownload Sources and Documentation. IDEA现在会下载和附加所有可用的源代码(和/或javadoc),用于您项目中的所有依赖项/库。如果需要,您可以配置maven始终执行此操作。要设置当前项目,请单击maven工具窗口中的设置按钮enter image description here,然后选择Importing节点或转到Settings > [Project Settings] > Maven > Importing。在对话框中,勾选“自动下载”源和/或文档选项。要将其设置为所有将来创建的项目的默认值,请转到File > Other Settings > Default Settings > Maven > Importing并进行设置。

一旦源代码已经附加,您将能够步入elastic search代码,或通过以下任一方法之一打开一个类:1)使用Ctrl+N搜索并输入一个类,键入Ctrl+N第二次以包括库类在您的搜索中或2)使用Ctrl+B(当您的光标在方法调用上时)或Ctrl+Click跳转到方法声明。然后,您可以设置断点。

对于服务器代码

您需要创建一个带有源代码的elastic search项目。最简单的方法就是克隆他们的repo(或以其他方式检出)您也可以将ES服务器库(包括源代码)附加到您的项目中。

如果您正在本地运行elastic search,只需创建一个本地的Run/Debug配置来运行ES并通过Debug启动。如果在远程服务器上运行ES,则需要创建一个远程调试配置,然后附加到远程ES服务器(需要使用正确的Java Debug属性启动)。有关更多信息,请参见帮助> IntelliJ IDEA > 参考> 对话框> 运行/调试配置> 运行/调试配置:Remote 帮助> IntelliJ IDEA > 语言和框架特定指南> Java EE > 使用应用程序服务器> 使用服务器运行/调试配置

嗨,我想问一下关于elasticsearch服务器的问题。我已经将项目导入到Intellij中,并使用Maven目标打包了它。我的问题是如何创建一个目标来运行elastic search。 - Vame
由于他们现在已经转向Gradle,那么在Intellij中调试Elasticsearch代码有什么方法吗? - Nirbhay Kundan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接