*guides-headless* Eclim Headless Server Guide *************************** The eclim daemon supports running both inside of the eclipse gui and as a "headless" non-gui server. However, even in the headless mode, eclipse still requires a running X server to function. If you are running eclim on a desktop then this isn't a problem, but some users would like to run the eclim daemon on a truly headless server. To achieve this, you can make use of X.Org's Xvfb server. Note: This guide uses the Ubuntu server distribution to illustrate the process of setting up a headless server, but you should be able to run Xvfb on the distro of your choice by translating the package names used here to your distro's equivalents. The first step is to install the packages that are required to run eclipse and eclim: - Install a sun jdk: > $ sudo apt-get install sun-java6-jdk < - Install Xvfb and some other gui related dependencies: > $ sudo apt-get install xvfb libgtk-directfb-2.0-dev x11-xkb-utils libgl1-mesa-dri < The next step is to install eclipse. Usually the eclipse version found in your distro's package manager repository is behind the latest versions found on eclipse.org and may not be supported by eclim any longer. So, the recommended means of installing eclipse is to download a version from eclipse.org (http://eclipse.org/downloads/). You can either use a console based browser like elinks, or you can navigate to the download page on your desktop and copy the download url and use wget to download the eclipse archive. Once downloaded you can then extract the archive in the directory of your choice. > $ wget /eclipse-java-galileo-linux-gtk.tar.gz $ tar -zxvf eclipse-java-galileo-linux-gtk.tar.gz < Once eclipse is installed, you can then install eclim. Since the eclim installer does not yet support console installs, you can checkout the code from git and build it: - Install the necessary packages to build eclim: > $ sudo apt-get install build-essential git-core $ sudo apt-get --no-install-recommends install ant ant-optional < - Clone eclim from the git repository and optionally checkout the version of eclim you wish to build (1.5.2 in this case): > $ git clone git://github.com/ervandew/eclim.git $ cd eclim $ git checkout 1.5.2 < - Then you can build eclim with the plugins you wish to enable (see the developers guide (|guides-development|) for more info on building eclim). > $ ant -Declipse.home=/home/ervandew/eclipse -Dplugins=ant,jdt < If you want to build in support for one or more eclim plugins for which the required dependency is not installed in your eclipse distribution, you can install the dependency using eclipse's p2 command line client. Make sure the command references the correct repository for your eclipse install (galileo in this example) and that you have Xvfb running as described in the next step of this guide: > DISPLAY=:1 ./eclipse/eclipse -nosplash -consolelog -debug -application org.eclipse.equinox.p2.director -metadataRepository http://download.eclipse.org/releases/galileo -artifactRepository http://download.eclipse.org/releases/galileo -installIU org.eclipse.wst.web_ui.feature.feature.group < For a list of eclim plugins and which eclipse features they require, please see the installer dependencies (http://github.com/ervandew/ec lim/blob/master/src/installer/resources/dependencies.xml). Note that the suffix '.feature.group' must be added to the dependency id found in that file when supplying it to the '-installIU' arg of the above command. The last step is to start Xvfb followed by eclimd: > $ Xvfb :1 -screen 0 1024x768x24 & $ DISPALY=:1 ./eclipse/eclimd start < When starting Xvfb you may receive some errors regarding font paths and possibly dbus and hal, but as long as Xvfb continues to run, you should be able to ignore these errors. The first time you start eclimd you may want to omit the 'start' argument so that you can see the output on the console to ensure that eclimd starts correctly. vim:ft=eclimhelp