====== Eclipse Setup for Vufind ====== This will show you how to set up [[http://www.eclipse.org/ | Eclipse]], an open source IDE for just about every language imaginable. In this development environment, we'll use several plugins to make working with Vufind very easy. ===== Set Up Eclipse ===== ==== Get Eclipse ==== Obviously, you need to [[http://www.eclipse.org/downloads/ | download Eclipse]]. For the purposes of this set up, grab the Eclipse Classic version for your platform (it's at the bottom of the page). ==== Java ==== If you don't already have a JRE installed, you'll need one. If you're not sure if you have a JRE installed, open a terminal (or command prompt) and type java -version You should (hopefully) get something looking like this java version "1.6.0_06" Java(TM) SE Runtime Environment (build 1.6.0_06-b02) Java HotSpot(TM) Server VM (build 10.0-b22, mixed mode) If your numbers are different, don't worry. You just want a JRE at 1.5 or above. It doesn't actually matter which JRE you use, but I tend to use Sun's latest. If you need it, you can use your package manager, or download the software directly from [[http://java.sun.com/javase/downloads | Sun's website]]. You don't need the full SDK (though it's good to have if you're testing Vufind locally). ===== Plugins ===== ==== Subclipse ==== Subclipse is a great Subversion client that runs directly in Eclipse. It provides integration into the contextual menu (right-click) under Team. To install, we need to add a third-party target site in Eclipse. * Help -> Software Updates * In the "Available Software" tab, click on the "Add Site" button and past this: http://subclipse.tigris.org/update_1.4.x (you may need to check the [[http://subclipse.tigris.org/ | Subclipse site]] for the latest version ). * Select the Subclipse option under the http://subclipse.tigris.org/update_1.4.x tree. * Click install You'll be prompted to restart Eclipse. We're adding a bunch of plugins, so you don't have to do this until you're ready to start coding. ==== Target Management ==== The [[http://www.eclipse.org/dsdp/tm/|Target Management Project]] "creates data models and frameworks to configure and manage remote (mainframe down to embedded) systems, their connections, and their services." That's a bunch of fancy words to give you access to SSH/SFTP/SMB/NFS file systems in Eclipse. It's really handy for deploying to remote servers and making tweaks as needed. * Help -> Software Updates * In the "Available Software" tab, click on the "Add Site" button and write this one: http://download.eclipse.org/dsdp/tm/updates/3.0/ (this is the URL for the version 3.0, check TM/RSE site to get latest one). * Click on "Manage Sites" and select the entry for DSPD Target Management (http://download.eclipse.org/dsdp/tm/updates/3.0) * Click OK to add the target * Click Refresh to update the list * Expand Target Management 3.0 Update Site * Expand Remote Access and Device Development * Get the following * RSE FTP Service * RSE Local Services * RSE SSH Services * Target Management Terminal * Target Management Service Discovery (you may need to do a search for this...just choose the 3.0 version in Ganymede/Remote Access Device Development) * Click Install and finish the wizard ==== Web Tools ==== The [[http://www.eclipse.org/projects/project_summary.php?projectid=webtools | Eclipse Web Tools Platform (WTP)]] project "extends the Eclipse platform with tools for developing Web and Java EE applications. It includes source and graphical editors for a variety of languages, wizards and built-in applications to simplify development, and tools and APIs to support deploying, running, and testing apps." * Help -> Software Updates * Click on the "Available Software" tab * Expand Ganymede * Expand Web and Java EE Development * Select the following * Eclipse XML Editor and Tools * Web Developer Tools * Web Page Editor * Click install and finish the wizard ==== Dynamic Languages Toolkit ==== The [[http://wiki.eclipse.org/DLTK | Dynamic Languages Toolkit]] "is a tool for vendors, researchers, and end-users who rely on dynamic languages. DLTK is comprised of a set of extensible frameworks designed to reduce the complexity of building full featured development environments for dynamic languages such as PHP and Perl. Besides a set of frameworks DLTK provides exemplary Tcl, Ruby, and Python development environments ready to use out of the box." * Click Help -> Software Updates * Click on the "Available Software" tab * Click on "Manage Sites" * Check the box next to http://download.eclipse.org/technology/dltk/updates/ * Click OK * Expand http://download.eclipse.org/technology/dltk/updates/ * Expand Dynamic Languates Toolkit (DLTK) 0.95 * Select Dynamic Languages Toolkit - Core Frameworks * Click install and finish the wizard ==== Database ==== The [[http://wiki.eclipse.org/index.php/Data_Tools_Platform_Project | Data Tools Platform Project]] allows you to work directly with your SQL backend from Eclipse. While you may not need this for most of your Vufind development, it's nice to have. * Help -> Software Updates * Click on the "Available Software" tab * Expand Ganymede * Expand Database Development * Select these plugins * Data Tools Platform Enablement * Data Tools Platform SQL Development Tools * Click Install and finish the wizard Note, when using DTP, you will need to have the JDBC drivers for your RDBMS. * [[http://dev.mysql.com/downloads/connector/j/5.1.html|MySQL]] * [[http://jdbc.postgresql.org/download.html | PostgreSQL]] * [[http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html | Oracle]] * [[http://msdn.microsoft.com/en-us/data/aa937724.aspx | MSSQL]] ==== Graphical Editing Framework ==== The [[http://www.eclipse.org/projects/project_summary.php?projectid=tools.gef | Graphical Editing Framework ]] "allows developers to take an existing application model and quickly create a rich graphical editor." * Help -> Software Updates * Click on the "Available Software" tab * Expand Ganymede * Expand Graphical Editors and Frameworks * Select Graphical Editing Framework GEF * Click Install and finish the wizard ==== PDT ==== The [[http://www.eclipse.org/pdt/ | PDT project]] "provides a PHP Development Tools framework for the Eclipse platform. This project encompasses all development components necessary to develop PHP and facilitate extensibility. It leverages the existing Web Tools Project in providing developers with PHP capabilities." Unfortunately, this is a bit more involved than the rest of the setups as the project hasn't quite released a version for Ganymede. * [[http://download.eclipse.org/tools/pdt/downloads/ | Download the latest Integration build]]. Be sure this is the latest **2.0.0 Integration Build** (toward the bottom of the page). You just need the Runtime version. * Unzip it somewhere. * Start Eclipse (if it's not already running) * Help -> Software Updates * Click on the "Available Software" tab * Click on the "Add Site" button * Click on "Local" * Navigate to where you expanded the PDT Integration build * Click OK until you get back to the Software Update screen (twice) * Expand the newly create site -> Uncategorized * Select PDT Feature * Click Install and finish the wizard ====== Project Checkout ====== To help keep up with the latest code from the repository, you can create a new project with the Subversion information in it. * Click File -> New -> Other * Scroll down and expand SVN * Click on Checkout Projects from SVN * Make sure the Create a new repository location is selected and click Next. * Paste this into the URL https://vufind.svn.sourceforge.net/svnroot/vufind * Select the Trunk and click Finish Now, you'll be prompted to create a new project. * Expand **General** and select **Project** and click **Next** * Name your project (e.g. Vufind) * At this point, you can accept the default location, but you may want to put it somewhere else (e.g. /usr/local/vufind) * Click Finish to import the Vufind source into your project space For managing a local instance with the Vufind trunk with local revisions, please read the [[Subversion]] page.