Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 53 Next »

Contents

Installation

There are generally three ways to install Eclipse:

Also see the official installation guide.

Recommended installation locations

On Linux:

  • /home/shadylady/tools/eclipse/eclipse-java
  • /opt/eclipse (according to Linux#Manualsoftwareinstallation)
  • /usr/lib/eclipse  (This is only if installed by an official system package manager)
  • /snap/eclipse/current  (If installed via snap )

On Windows:

  • C:\ProgramData\eclipse\eclipse-java 

Workspaces

It is not recommended to put your code in a workspace directory. A "workspace" in Eclipse is more akin to isolated or "portable" application settings; not a place to store projects.

It is highly discouraged to put code in an Eclipse workspace folder.

Potential workspace locations:

  • ~/tools/eclipse/workspace    (Linux)
  • ~/.config/eclipse/workspace 
  • C:\ProgramData\eclipse\workspace      (Windows)

Configuration

Application memory

There is no way to edit eclipse.ini when Eclipse is installed via snap. A workaround is to pass -vmargs -Xms1g -Xmx3g  to the launcher.

Eclipse will perform terribly unless you give it a few GB of memory (RAM).

In the installation folder, find eclipse.ini. Possible locations include /usr/lib/eclipse, /opt/eclipse, C:\Eclipse, and C:\ProgramData\Eclipse.

Ensure is contains the following JVM options:

-Xms512m
-Xmx2g

The values above are just an example. Scale them to fit your needs. See the official eclipse.ini documentation.

The settings will take effect upon the next restart of Eclipse.

Create a desktop launcher

If Eclipse was installed manually, you'll want to create a desktop application launcher or shortcut. See Linux#Desktopentries.

An example eclipse.desktop  file in Linux you could put in ~/.local/share/applications/:

[Desktop Entry]
Name=Eclipse
Comment=Java Development Environment
Icon=/opt/eclipse/icon.xpm
Exec=/opt/eclipse/eclipse
Terminal=false
Type=Application
Categories=Development;IDE;Java;
StartupNotify=true

Disable Welcome menu

To disable the Welcome menu from consuming the full application screen on startup:

  • Clear "Always show Welcome at start up" at the bottom right corner of the Welcome menu.

General settings

In Window > Preferences > General:

  • Set "Show heap status"

Editor settings

In Window > Preferences > General > Editors

Text Editors:

  • Set "Displayed tab width" to "3"
  • In "Spelling", clear "Enable spell checking"

Workspace settings

In Window > Preferences > General > Workspace:

  • Set "Refresh using native hooks or polling"
  • Set "Show full workspace path"
  • Set "Text file encoding" to "UTF-8"
  • Set "New text file line delimiter" to "Unix"

Expand Workspace > Build.  Set "Save automatically before build"

Gradle settings

Default Gradle settings in Eclipse are currently broken so you must "Override workspace settings" every time. See Github issue.

In Window >Preferences > Gradle:

Java settings

In Window > Preferences > Java:

Code Style > Formatter:

Compiler > Error/Warnings > Deprecated and restricted API:

  • Set "Forbidden reference (access rules)" to "Ignore"

Editor > Content Assist > Favorites:

  • Click "New Type..." and add "org.junit.jupiter.api.Assertions"

Templates

In Editor > Templates:

TODO

Create some updated templates for LogTools, JUnit 5, etc.

Plugins

JavaFX

To get JavaFX to work in Eclipse, a plugin is presently required. Follow the instructions to install e(fx)clipse:

  1. Go to Help > Eclipse Marketplace...
  2. Then search and install efxclipse

C++ development

CMake editor: http://www.cthing.com/CMakeEd.asp

Eclipse file generator from CMake: https://gitlab.kitware.com/cmake/community/wikis/doc/editors/Eclipse-CDT4-Generator

EGit

Install Egit: http://www.eclipse.org/egit/download/

Set Git default Pull to 'rebase' as described in Git Tips And Tricks

In Window > Preferences > Team > Git > History:

  • Set "Maximum characters to show for a tag" to 100
  • Set "Maximum characters to show for a branch" to 100

Importing Gradle Projects

Default Gradle settings in Eclipse are currently broken so you must "Override workspace settings" every time.

  1. Select File > Import...
  2. Select the "Gradle > Existing Gradle Project" import wizard
  3. Clear "Show the welcome page the next time the wizard appears"
  4. Set the "Project root directory"
  5. Select "Override workspace settings"
    1. Set "Gradle distribution" to "Local installation directory" and point to your local Gradle installation
      (Common locations are /usr/share/java/gradle, /opt/gradle, and C:\gradle)
    2. Set "Show Console View"
    3. Set "Show Executions View"
  6. (passive) Check that a tree populates on the "Import Preview" page

See Gradle#Troubleshooting

Troubleshooting

General troubleshooting steps for Eclipse are:

  • Project > Rebuild
  • Project > Clean...
  • Gradle > Refresh Gradle Project
  • File > Restart
  • Create a new workspace

Adding and removing projects from workspace

It might be best to delete projects in Eclipse before deleting them on disk. Else your workspace might get corrupted if you try to delete from the File Explorer.

NoClassDefFoundError

Sometimes Eclipse will "forget" part of it's classpath. Recommended solution: Refresh Gradle Project

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.NoClassDefFoundError: com/martiansoftware/jsap/JSAPException
	at java.lang.Class.getDeclaredMethods0(Native Method)
	at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
	at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
	at java.lang.Class.getMethod0(Class.java:3018)
	at java.lang.Class.getMethod(Class.java:1784)
	at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544)
	at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526)
Caused by: java.lang.ClassNotFoundException: com.martiansoftware.jsap.JSAPException
	at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 7 more

See also

TODO: How to run Gradle tasks with custom options

Learn more

  • No labels