Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "JDT weaving features"

(Installation)
Line 15: Line 15:
 
For information on how to use the JDT weaving plugin to provide deep integration with plugins and editors for other Java-like languages, see [[JDT weaving implementation]].
 
For information on how to use the JDT weaving plugin to provide deep integration with plugins and editors for other Java-like languages, see [[JDT weaving implementation]].
  
==Installation==
+
'''Due to [https://bugs.eclipse.org/bugs/show_bug.cgi?id=257178 Bug 257178], it is necessary to have the org.eclipse.equinox.weaing.hook bundle installed in the same directory as org.eclipse.osgi.''' For a work around, see below.
  
AJDT with JDT weaving is only available for '''Eclipse 3.4'''.  The easiest way to install is through the standard AJDT 1.6 update site:
+
==Turning on JDT Weaving manually==
  
http://download.eclipse.org/tools/ajdt/34/update
+
If automated enabling of JDT Weaving is not working for you, it is possible to manually enable it. Here are three ways to do it.
  
Installing from this update site will automatically install Equinox Aspects from a separate update site.  Additionally, the install will update your config.ini file to allow the weaving service to be enabled at startup.
+
Simple way (try this first):
  
Due to [https://bugs.eclipse.org/bugs/show_bug.cgi?id=257178 Bug 257178], it is currently only possible to install AJDT with JDT weaving in the same directory that Eclipse itself is installed in.
+
# In Eclipse open up the plug-in registry view.
 +
# Look for org.eclipse.equinox.weaving.aspectj
 +
# Right click nd select "Show Advanced operations"
 +
# Right click again and select start (if not already started)
 +
# Restart
  
Actually, this only applies to Equinox Aspects.  If you cannot install in the eclipse directory or want to install manually (i.e., from a zip file and not from an update site), see below.
+
If JDT Weaving still doesn't start, then try the following:
 +
# Find the eclipse/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info file and open it in a text editor
 +
# Find the line that says:
 +
org.eclispe.equinox.weaving.aspectj
 +
# Change false to true
 +
# Start eclipse
  
===Manual Install===
+
Or you can try this:
 +
# Find the eclipse/configuration/config.ini file and open in a text editor
 +
# Ensure that the line: osgi.framework.extensions=org.eclipse.equinox.weaving.hook is present
 +
# On the line that starts osgi.bundles= after the '=', insert the text
 +
    org.eclipse.equinox.weaving.aspectj@2\:start,
 +
# Save and start eclipse
  
To do a manual install, first install Equinox Aspects (see below) and then download the desired zip file of AJDT from the [http://eclipse.org/ajdt/downloads downloads page] and unzip into your eclipse ''dropins'' folder.
 
  
These zips do not include Equinox Aspects, which is required for the weaving to be installed.  There are two ways to install Equinox Aspects: from the update site, or manually.
+
==Installation==
  
====Installing Equinox Aspects from the update site====
+
AJDT with JDT weaving is only available for Eclipse 3.4 and 3.5.  The easiest way to install is through the standard AJDT 1.6 update site:
  
The Equinox Aspects is temporarily available here:
+
http://download.eclipse.org/tools/ajdt/34/update
 +
 
 +
Or through the dev AJDT 1.7 update site (for Eclipse 3.5):
 +
 
 +
http://download.eclipse.org/tools/ajdt/dev/35/update
 +
 
 +
Installing from this update site will automatically install Equinox Aspects from a separate update site.  Additionally, the install will update your config.ini file to allow the weaving service to be enabled at startup.
 +
 
 +
Due to [https://bugs.eclipse.org/bugs/show_bug.cgi?id=257178 Bug 257178], it is currently only possible to install AJDT with JDT weaving in the same directory that Eclipse itself is installed in.
 +
 
 +
===Manual Install===
  
http://download.eclipse.org/tools/ajdt/34/dev/equinox-aspects
+
To do a manual install, first download the desired zip file of AJDT from the [http://eclipse.org/ajdt/downloads downloads page] and unzip into your eclipse ''plugins'' or ''dropins'' folder.
  
in the future, the update site will be moved to the Equinox name space.
+
'''Important:''' the org.eclipse.equinox.weaving.hook bundle must be installed in the same directory as the org.eclipse.osgi bundle.  So, if you unzipped AJDT into your dropins directory, you must move org.eclipse.equinox.weaving.hook to plugins.
  
====Installing Equinox Aspects manually====
+
Next, restart Eclipse.  If you already have AspectJ projects in your workspace, you will be prompted to enable JDT Weaving. If not, then you can enable in preferences (see below).
  
#Download the latest release from http://www.eclipse.org/equinox/incubator/aspects/equinox-aspects-downloads.php
 
#Unzip into your Eclipse plugins directory (must be ''plugins'' and not ''dropins'' because of [https://bugs.eclipse.org/bugs/show_bug.cgi?id=257178 Bug 257178])
 
#Start Eclipse and then shut down.  This will install Equinox Aspects in the P2 registry, but the weaving service will not be enabled until you do the following.
 
#Edit your config.ini file in your Eclipse configuration directory:
 
*Add the following line:
 
osgi.framework.extensions=org.eclipse.equinox.weaving.hook
 
*Look for the line that looks something like:
 
osgi.bundles=reference\:file\:org.eclipse.equinox.simpleconfigurator_1.0.0.v20080604.jar@1\:start
 
and append:
 
,org.eclipse.equinox.weaving.aspectj@2\:start
 
*Optionally, add the following lines in order to enable weave info messages:
 
aj.weaving.verbose=true
 
org.aspectj.weaver.showWeaveInfo=true
 
org.aspectj.osgi.verbose=true
 
  
 
==Runtime==
 
==Runtime==
Line 78: Line 87:
 
If you had originally installed Equinox Aspects manually, then you must also manually back out all the changes to the config.ini.
 
If you had originally installed Equinox Aspects manually, then you must also manually back out all the changes to the config.ini.
  
==Running AJDT 1.6.2 without JDT Weaving==
+
==Running AJDT without JDT Weaving==
  
It is possible to disable the weaving service and still run AJDT 1.6.2.  Basic features, such as the AJBuilder, navigation, and cross references will be available, but all the advanced features will be disabled.
+
It is possible to disable the weaving service and still run AJDT.  Basic features, such as the AJBuilder, navigation, and cross references will be available, but advanced features will be disabled.
  
 
To disable JDT Weaving, go to  
 
To disable JDT Weaving, go to  

Revision as of 18:21, 3 March 2009

Starting with version 1.6.2, AJDT will be shipped with the JDT weaving plugin. This plugin implements the weaving service that uses Equinox Aspects to weave into JDT. Upon installing or upgrading AJDT, the weaving service is initially off. You are asked if the service should be enabled the first time an AspectJ project is opened or created.

Through this weaving, AJDT is able to integrate with Eclipse more deeply and in ways that were not possible before. This release introduces the following features:

  • ITD-aware reconciling/eager parsing (in both Java and AJ editors, this means that red squiggles will not appear when referencing ITDs)
  • ITD-aware content assist (for now only in *.aj files in AJ editors)
  • ITD-aware type hierarchies (for now only super-type hierarchies can be calculated with ITD-awareness)
  • Ability to search for aspect elements using standard Java search and Open Java type

With the service enabled, Eclipse may require more resources. If you encounter any sluggishness or memory problems, it is recommended that you increase your Xmx and PermGen sizes to at least 512 and 128 respectively, using something like the following vmargs when launching eclipse:

-vmargs -Xmx512M -XX:MaxPermSize=128M


For information on how to use the JDT weaving plugin to provide deep integration with plugins and editors for other Java-like languages, see JDT weaving implementation.

Due to Bug 257178, it is necessary to have the org.eclipse.equinox.weaing.hook bundle installed in the same directory as org.eclipse.osgi. For a work around, see below.

Turning on JDT Weaving manually

If automated enabling of JDT Weaving is not working for you, it is possible to manually enable it. Here are three ways to do it.

Simple way (try this first):

  1. In Eclipse open up the plug-in registry view.
  2. Look for org.eclipse.equinox.weaving.aspectj
  3. Right click nd select "Show Advanced operations"
  4. Right click again and select start (if not already started)
  5. Restart

If JDT Weaving still doesn't start, then try the following:

  1. Find the eclipse/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info file and open it in a text editor
  2. Find the line that says:
org.eclispe.equinox.weaving.aspectj
  1. Change false to true
  2. Start eclipse

Or you can try this:

  1. Find the eclipse/configuration/config.ini file and open in a text editor
  2. Ensure that the line: osgi.framework.extensions=org.eclipse.equinox.weaving.hook is present
  3. On the line that starts osgi.bundles= after the '=', insert the text
   org.eclipse.equinox.weaving.aspectj@2\:start,
  1. Save and start eclipse


Installation

AJDT with JDT weaving is only available for Eclipse 3.4 and 3.5. The easiest way to install is through the standard AJDT 1.6 update site:

http://download.eclipse.org/tools/ajdt/34/update

Or through the dev AJDT 1.7 update site (for Eclipse 3.5):

http://download.eclipse.org/tools/ajdt/dev/35/update

Installing from this update site will automatically install Equinox Aspects from a separate update site. Additionally, the install will update your config.ini file to allow the weaving service to be enabled at startup.

Due to Bug 257178, it is currently only possible to install AJDT with JDT weaving in the same directory that Eclipse itself is installed in.

Manual Install

To do a manual install, first download the desired zip file of AJDT from the downloads page and unzip into your eclipse plugins or dropins folder.

Important: the org.eclipse.equinox.weaving.hook bundle must be installed in the same directory as the org.eclipse.osgi bundle. So, if you unzipped AJDT into your dropins directory, you must move org.eclipse.equinox.weaving.hook to plugins.

Next, restart Eclipse. If you already have AspectJ projects in your workspace, you will be prompted to enable JDT Weaving. If not, then you can enable in preferences (see below).


Runtime

To see if the JDT Weaving plugin is properly configured, go to

Preferences -> JDT Weaving

This page will notify you of the state of the weaving service. It will also allow you to enable/disable the service.

Uninstalling

If AJDT was installed through the update site, then you can uninstall it in the same way you uninstall any other Eclipse feature:

Help -> Software Updates -> Installed Software

Select AJDT, and click Uninstall.... This will also uninstall Equinox Aspects and undo the changes to your config.ini.

If either Equinox Aspects or AJDT were installed manually, then they must be uninstalled manually as well by deleting the appropriate plugins from the filesystem.

If you had originally installed Equinox Aspects manually, then you must also manually back out all the changes to the config.ini.

Running AJDT without JDT Weaving

It is possible to disable the weaving service and still run AJDT. Basic features, such as the AJBuilder, navigation, and cross references will be available, but advanced features will be disabled.

To disable JDT Weaving, go to

Preferences -> JDT Weaving

Click the button Disable JDT Weaving button and restart the workbench. Similarly, to re-enable the weaving service go back to the preference page and click Enable JDT Weaving.

Alternatively, to disable manually, you can edit the file eclipse/configuration/config.ini. Delete the line that looks something like this:

osgi.framework.extensions=org.eclipse.equinox.weaving.hook

Back to the top