Difference between revisions of "SetUpEclipseForPlugin"
| Line 60: | Line 60: | ||
| − | === Create the plugin Java class === | + | Click ''OK''. |
| + | |||
| + | |||
| + | === Step 3. Create the plugin Java class === | ||
OK, so now Eclipse is set up, all we need is to create a new tab widget. We have documentation about implementing different plug-in types on our [http://protege.stanford.edu/doc/dev.html#plugins Developer's webpage]. | OK, so now Eclipse is set up, all we need is to create a new tab widget. We have documentation about implementing different plug-in types on our [http://protege.stanford.edu/doc/dev.html#plugins Developer's webpage]. | ||
| + | |||
| + | This guide will create a tab widget that displays "Hello World". To create a Tab Widget, you need to extend the class [http://protege.stanford.edu/protege/3.4/docs/api/core/edu/stanford/smi/protege/widget/AbstractTabWidget.html edu.stanford.smi.protege.widget.AbstractTabWidget] from the protege.jar and implement the method <code>initialize()</code> that is called when the tab is created. | ||
| + | |||
| + | Right-click on ''src'', select ''New -> Class''. In the new class panel: | ||
| + | |||
| + | * Write in the ''Name'' field: <code>HelloWorldTab</code> | ||
| + | * Write in the ''Superclass'' field: <code>AbstractTabWidget</code> (auto-completion also works, press Ctrl+Space) | ||
| + | * Write in the ''Package'' field: <code>mytab</code> | ||
| + | |||
| + | This is what you should see: | ||
| + | |||
| + | |||
| + | [[Image:Eclipse_plugin_new_class.png]] | ||
| + | |||
| + | |||
| + | Click ''Finish''. The new class should show up under the ''src'' folder. An empty implementation of the <code>initialize</code> method was already created by Eclipse. You should see this: | ||
| + | |||
| + | |||
| + | [[Image:Eclipse_plugin_new_tab_class.png]] | ||
| + | |||
| + | |||
| + | |||
| + | You can replace the code of the class with the one from below (just prints "Hello World!"): | ||
| + | |||
| + | <code> | ||
| + | <pre> | ||
| + | package mytab; | ||
| + | |||
| + | import javax.swing.JLabel; | ||
| + | |||
| + | import edu.stanford.smi.protege.widget.AbstractTabWidget; | ||
| + | |||
| + | public class HelloWorldTab extends AbstractTabWidget { | ||
| + | |||
| + | public void initialize() { | ||
| + | add(new JLabel("Hello World!")); | ||
| + | } | ||
| + | |||
| + | public static void main(String[] args) { | ||
| + | edu.stanford.smi.protege.Application.main(args); | ||
| + | } | ||
| + | |||
| + | } | ||
| + | </pre> | ||
| + | </code> | ||
| + | |||
| + | |||
| + | Our HelloWorldTab plug-in will display "Hello World!" in a tab. | ||
| + | |||
| + | |||
| + | === Create the manifest file === | ||
| + | |||
| + | To make Protege recognize the new tab widget, you will need to create a manifest file. We have instructions about creating the manifest file [http://protegewiki.stanford.edu/index.php/PluginManifestsAndJars here]. | ||
| + | |||
| + | Right-click on ''src -> New -> Folder''. In the panel, select the ''src'' node, and folder name: ''META-INF'' (capital letters!). This is what you should see: | ||
| + | |||
| + | |||
| + | [[Image:Eclipse_plugin_meta_inf.png]] | ||
Revision as of 17:07, March 19, 2009
Setting up Eclipse for plug-in development
This page is intended for people who want to develop their own plug-in (e.g., tab widget, slot widget, project plug-in, etc.) and who use Eclipse as their Java development environment. This is a step-by-step guide that shows the setup of the Eclipse environment using screen shots. We will use as an example the scenario in which a developer wants to create a tab widget that displays "Hello World!". These steps can be used for developing any plug-in type.
Contents
Prerequisites
Before we start, make sure that you have the latest version of Protege 3.x and Eclipse installed.
- Download and install Eclipse from here.
- Download and install latest version of Protege 3.x from here. Let's say you have installed Protege in:
Setting up Eclipse
Step 1. Create a new Java Project
Start Eclipse. Go to File Menu -> New -> Project -> Select Java Project. Click Next. In the next panel choose a project name, say "HelloWorldTab". The screen should look like below:
Click Finish. Congratulations! You have created an empty Java project. Your screen should look like:
Step 2. Configure the project build path
This step assumes that you have Protege 3.x installed on your computer. This example assumes that Protege was installed in /work/protege/Protege_3.4 (On Windows machines, the default installation directory would be something like C:\Program Files\Protege_3.4)
Select the project name, HelloWorldTab', right click, select Build Path -> Configure Build Path.... Switch to the Libraries tab. You should see an something like this:
Click on Add External JARs... and go to the Protege installation directory. Select from there the:
- protege.jar
- looks-2.1.3.jar (version may vary)
Click OK.
If your plug-in is for OWL, you will need to include also all the jars in the protege-owl plug-in folder. Repeat the same operation: Click Add External Jars, go to the Protege installation directory/plugins/edu.stanford.smi.protegex.owl and select all the jar files in that directory.
Note If your plug-in depends on other plug-ins (e.g., on the Change Management plug-in), then you need to add to the build path also all the jars in that plug-in folder.
After adding the Protege jars (and the protege-owl jars), the Library tab should look like:
Click OK.
Step 3. Create the plugin Java class
OK, so now Eclipse is set up, all we need is to create a new tab widget. We have documentation about implementing different plug-in types on our Developer's webpage.
This guide will create a tab widget that displays "Hello World". To create a Tab Widget, you need to extend the class edu.stanford.smi.protege.widget.AbstractTabWidget from the protege.jar and implement the method initialize() that is called when the tab is created.
Right-click on src, select New -> Class. In the new class panel:
- Write in the Name field:
HelloWorldTab - Write in the Superclass field:
AbstractTabWidget(auto-completion also works, press Ctrl+Space) - Write in the Package field:
mytab
This is what you should see:
Click Finish. The new class should show up under the src folder. An empty implementation of the initialize method was already created by Eclipse. You should see this:
You can replace the code of the class with the one from below (just prints "Hello World!"):
package mytab;
import javax.swing.JLabel;
import edu.stanford.smi.protege.widget.AbstractTabWidget;
public class HelloWorldTab extends AbstractTabWidget {
public void initialize() {
add(new JLabel("Hello World!"));
}
public static void main(String[] args) {
edu.stanford.smi.protege.Application.main(args);
}
}
Our HelloWorldTab plug-in will display "Hello World!" in a tab.
Create the manifest file
To make Protege recognize the new tab widget, you will need to create a manifest file. We have instructions about creating the manifest file here.
Right-click on src -> New -> Folder. In the panel, select the src node, and folder name: META-INF (capital letters!). This is what you should see:






