Java / Javac Support

Executing java

To run the configured main class for your project, you may use the :Java command, which executes java and displays the results in a temporary buffer.

Note

Please note that this command is not intended to be a full replacement for the more advance support provided by eclipse, ant, or maven.

The :Java will locate the main class to run using the following steps:

  1. if the first argument is ‘%’ (:Java %) then run the current class.
  2. if the setting org.eclim.java.run.mainclass is set, then use the value as the fully qualified class name to run.
  3. lastly, attempt to locate a class containing a static main method, if only one is found, use that class.

Configuration

Eclim Settings

  • org.eclim.java.run.mainclass - Fully qualified name of the class containing the main method.
  • org.eclim.java.run.jvmargs - Json formatted list of default jvm args.

Executing javac

To compile your project’s source code, you may use the :Javac command, which will run javac on all source files found in your project’s src directories as configured by your .classpath file. You may use the org.eclim.java.compile.sourcepath setting described below, if you wish to alter which directories are used. The resulting class files will be written to the output path as defined in your project’s .classpath file.

Note

Please note that this command is not intended to be a full replacement for javac support provided by more comprehensive build tools like ant or maven.

Configuration

Eclim Settings

  • org.eclim.java.compile.sourcepath - The project relative source paths to be compiled by javac. This should be a space separated list of project relative source directories which you want javac to be executed against. When unset, all your configured source directories will be used.
  • org.eclim.java.compile.args - Json formatted list of default javac args.

Echo the classpath for the current project

When editing a java file, eclim provides the command :JavaClasspath which will echo the project’s resolved classpath entries separated by the system path separator or a supplied delimiter:

:JavaClasspath
:JavaClasspath -d \\n

If you would like to get the classpath from a script, you can also call eclim directly:

$ $ECLIPSE_HOME/eclim -command java_classpath -p <project_name>

Viewing list of known JDKs/JREs installed

To view a list of all the JDKs/JREs that eclipse is aware of, eclim provides the command :JavaListInstalls.