General Questions

Eclipse Code Recommenders requires Eclipse 4.2 (aka Juno) or later. Download the latest release of Eclipse here.

Out of the box, Eclipse Code Recommenders provides intelligent code completion and extended documentation for the Java Runtime Environment (java.*, javax.*) and most, if not all, APIs offered by the Eclipse foundation (org.eclipse.*). These recommendations are based on the usage patterns exhibited by code available publicly on the Eclipse Marketplace and have been compiled into so-called models through data-mining. You can see the list of available models in the Model Repositories view.

At the moment, the model repository at download.eclipse.org provides more than 2,000 models for the Java Runtime Environment and many Eclipse APIs. To obtain models for a further framework, you need to data-mine them yourself. This requires both a code base that uses the framework in question and a tool like the [ctrl]flow Miner that extracts usage patterns from this code base and produces a model repository compatible with Eclipse Code Recommenders. You can configure any number of model repositories on the Code Recommenders > Models preference page or the Model Repositories view.

If the above message shows up in the Error Log, the most likely cause is a conflict with m2e 1.5, the Maven integration for Eclipse. (Other symptons are a missing Model Repositories view and the fact that neither the call nor override completion engines work.)

The workaround to this problem is to start Eclipse with the -clean command-line option. This is needed just once. See this bug for details.

Eclipse Code Recommenders will automatically download the necessary recommendation models for the frameworks/APIs you use. To do so, it needs to connect to a model repository using HTTP or HTTPS. If you are behind a proxy, you may experience connection issues depending on your configuration (see the General > Network Connections preference page).

The following configurations are known to work:

  • HTTP or HTTPS proxy (optionally requiring username/password Basic authentication) as configured by the Manual proxy provider.
  • HTTP or HTTPS proxy without authentication as configured by the Native proxy provider.

The following configurations do not work yet:

  • HTTP or HTTPS proxy requiring username/password authentication as configured by the Native proxy provider. See this bug for details.
  • HTTP or HTTPS proxy requiring Digest authentication. See this bug for details.
  • HTTP or HTTPS proxy requiring NTLM authentication. See this bug for details.

This is due to a known limitation of Eclipse's Java Development Tools (JDT) that do not make any recommendations at these locations without at least one character prefix. See this bug for details.

Timeouts are known to occur occasionally for constructor and type completions when the Subwords Completion is enabled. If you experience them often, please deactivate Subwords in the Code Recommenders > Completions preference page.

There are many ways to contribute to Eclipse Code Recommenders: