RFR: 8295884: Implement IDE support for Eclipse [v14]

Julian Waters jwaters at openjdk.org
Thu Nov 3 06:15:46 UTC 2022


> Eclipse is a popular and very well-known IDE in the world of Java development, utilized widely in many contexts, by beginners and experienced teams alike. Although a relatively lightweight IDE, it features surprisingly powerful indexing and code analysis capabilities, as well as useful tools, among which are make and Ant integration. While the tools it provides are not always as sophisticated as other IDEs (IntelliJ IDEA will likely come to mind as one such competitor), the simplicity of using it, as well as the reliability of this rugged IDE makes up greatly for the slightly less advanced tooling. Eclipse requires very little starting infrastructure in the workspace for all these features and indexing support as well, which makes it a good candidate for developing on the JDK.
> 
> This enhancement adds 4 extra targets to the make system for generating a basic Eclipse Workspace that provides almost full indexing support for the JDK, with varying levels as desired, from a minimalistic option only including the JVM's sources, to generating a workspace with both Java and C/C++ natures included, which allows for using Eclipse's ability to quickly swap between Java and C/C++ mode to work on both native and Java sources at the same time. Cross Compiling support is available, and in its entirety the change touches very little of the existing make system, barring its own Makefile within the ide subdirectory.
> 
> Indexing capabilities utilizing the enhancement:
> <img width="960" alt="java" src="https://user-images.githubusercontent.com/32636402/197784819-67ec7de4-7e27-4f33-b738-59b75a9e4403.PNG">
> <img width="787" alt="escape" src="https://user-images.githubusercontent.com/32636402/197784843-df8621a8-7b0a-42da-86f4-3afb92de0f71.PNG">

Julian Waters has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 19 additional commits since the last revision:

 - Rename RAnDOM to WORKSPACE_ID
 - Merge remote-tracking branch 'upstream/master' into eclipse
 - Merge remote-tracking branch 'upstream/master' into eclipse
 - Merge remote-tracking branch 'upstream/master' into eclipse
 - Merge remote-tracking branch 'upstream/master' into eclipse
 - Include extra directories required by HotSpot in HotSpot only workspaces
 - SINGLE_DOLLAR is not required
 - Nuke accidental comment not meant to be added
 - Initial support for Language Settings Providers
 - Prevent Eclipse from automatically attaching binary parsers to workspaces including native code
 - ... and 9 more: https://git.openjdk.org/jdk/compare/5907c2db...125601f8

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/10853/files
  - new: https://git.openjdk.org/jdk/pull/10853/files/065cbea5..125601f8

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=10853&range=13
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=10853&range=12-13

  Stats: 31318 lines in 98 files changed: 1831 ins; 29095 del; 392 mod
  Patch: https://git.openjdk.org/jdk/pull/10853.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/10853/head:pull/10853

PR: https://git.openjdk.org/jdk/pull/10853


More information about the ide-support-dev mailing list