Difference between revisions of "Mylyn/FAQ"

From Eclipsepedia

Jump to: navigation, search
(Task List)
(I am seeing <code>java.lang.OutOfMemoryError: PermGen space </code>errors, what's wrong?)
Line 199: Line 199:
 
If your Eclipse crashes, or you see the above error after installing Mylyn or other plug-ins, you have most likely hit the infamous MaxPermSize bug.  This is not a Mylyn specific problem, but a general Eclipse problem that is often triggered on Eclipse 3.2 and later, if you have many plug-ins installed and are using a Sun JVM.   
 
If your Eclipse crashes, or you see the above error after installing Mylyn or other plug-ins, you have most likely hit the infamous MaxPermSize bug.  This is not a Mylyn specific problem, but a general Eclipse problem that is often triggered on Eclipse 3.2 and later, if you have many plug-ins installed and are using a Sun JVM.   
  
To fix it simply add the following to your launch arguments. This is usually to your shortcut, or to the <tt>eclipse/configuration/config.ini</tt> file:
+
To fix it simply add the following to your launch arguments. This is usually to your shortcut:
 +
 
 +
    -vmargs -XX:MaxPermSize=128M
 +
 
 +
Or to the <tt>eclipse/configuration/config.ini</tt> file:
  
 
     -XX:MaxPermSize=128M
 
     -XX:MaxPermSize=128M
  
If you are using a large number of plug-ins (e.g. WTP) you may need to increase the number to more than 128M.   
+
If you are using a large number of plug-ins (e.g. WTP) you may need to increase the number to more than 256M (note that the size must be a power of 2).   
 +
 
 +
Eclipse 3.3.1 users: note note that due to Platform {{bug|203325}} you need to use the instructions above and cannot set the size using <code>-launcher.XXMaxPermSizeL</code>, which will be ignored.
  
 
For more information see the [[FAQ How do I increase the permgen size available to Eclipse? | Eclispe FAQ entry]].  Details of the problem are on [https://bugs.eclipse.org/bugs/show_bug.cgi?id=92250 Platform bug 92250].
 
For more information see the [[FAQ How do I increase the permgen size available to Eclipse? | Eclispe FAQ entry]].  Details of the problem are on [https://bugs.eclipse.org/bugs/show_bug.cgi?id=92250 Platform bug 92250].

Revision as of 23:20, 15 October 2007


Mylyn User Guide, Mylyn Home, Log in to edit

For instructions on downloading installing and configuring Mylyn, see the Mylyn User Guide. For instructions on developing and contributing to Mylyn, see the Mylyn Contributor Reference.

Contents

Installation

What versions of Eclipse are supported?

See the download page.

Mylyn also relies on a web browser that works with the Standard Widget Toolkit; Windows and MacOS users are fine, but Linux users might have to download another browser. See the SWT Browser guide for which browsers will work. See installing browser on Linux for installation instructions.

What version of Java is required?

Mylyn needs the Java 5 virtual machine.

To check the version of the Java virtual machine that Eclipse was launched with to to Help -> About Eclipse SDK -> Configuration Details and verify that the java.vm.version is 1.5.

Mac users should refer to the last comment on bug 1163477 for instructions on how to change the 1.4 default.

  • If you do not have Java 5, you can download it from Sun's web site.
  • If you have more than one VM, you need to specify that Eclipse should use the JDK1.5 VM.

In Unix, set the environment variable JAVA_HOME to the root of the JDK1.5 installation and/or set the PATH variable to put the JDK1.5 executable directory before any other VM executable directories. For example, under bash in Unix:

export JAVA_HOME="(location of JDK1.5 root)"
export PATH=$JAVA_HOME/bin:$PATH

We do not recommend using JDK 1.6 on Eclipse 3.1. (It works fine with Eclipse 3.2 or 3.3.) To use JDK 1.6 on Eclipse 3.1, you must add the following line to your config.inifile:

   org.osgi.framework.executionenvironment=OSGi/Minimum-1.0,OSGi/Minimum-1.1,JRE-1.1,J2SE-1.2,
   J2SE-1.3,J2SE-1.4,J2SE-1.5,JavaSE-1.6

What version of Mylyn is distributed with the Eclipse downloads?

The default Eclipse downloads contain the following Mylyn redistributions. Since the redistributed versions can be missing important bug fixes or feature additions, we recommend using the latest version of Mylyn.

  • Eclipse IDE for Java Developers: all of Mylyn except Team integration (e.g. automatic change sets) integration. Install the Eclipse CVS integration and then install the latest Mylyn build to get this component.
  • Eclipse IDE for Java EE Developers: all of Mylyn redistribution, install manually
  • Eclipse IDE for C/C++ Developers: no Mylyn redistribution, install manually
  • Eclipse for RCP/Plug-in Developers: all of Mylyn redistributed
  • Eclipse Classic: no Mylyn redistribution, install manually

My tasks or queries disappeared, what do I do?

This happens if Mylyn failed to install. First ensure that you have a correct install by following the instructions in the next section. After that, if you still do not see your tasks use the Task List view menu -> Restore Tasks From History... command (also available via File -> Import -> Task List.

Installation Troubleshooting

Java Persistence API Tools error when updating the JEE Eclipse Package

If you are trying to install additional features and get this error you have hit bug 194959 which should be resolved soon. The work-around is to check off the Europa Discovery Site and install the first two components of the Data Tools Platform.

Update failures

On Eclipse versions earlier than 3.3 (final) use only the "Search for new features.." option when updating Mylyn. If you use "Search for updates..." the Update Manager will allow a partial install that can cause Mylyn to fail to start, and you will need to run update again. See the feature configuration problem section below for details. If you encounter this problemm consider voting for Platform bug 132450.

Startup exceptions

If you see startup errors or warnings such as BundleException or timeout messages restart Eclipse with the -clean flag either on the command line, in your shortcut link, or by temporarily it into the eclipse/eclipse.ini file. If that does not resolve the problem please file a bug.

Incompatible VM (e.g. JDK 1.4)

If you are using the wrong VM, you'll see errors like the following in your log file.

   Root exception: java.lang.UnsupportedClassVersionError:
   org/eclipse/mylar/tasklist/MylarTasklistPlugin (Unsupported major.minor version 49.0)

See Configure Java to fix this problem.

Incompatible version of Eclipse

Separate versions and update sites exist for Eclipse 3.1 and 3.2), in which case you may see errors like the following in your <workspace>/.metadata/.log file or in a Mylyn view:

   java.lang.NoSuchMethodError: org.eclipse.ui.internal.dialogs.FilteredTree.getFilterControl()
   The activator org.eclipse.mylar.java.MylarJavaPlugin for bundle org.eclipse.mylar.java is invalid

Mylyn feature configuration problem

If the above do not address the issue, the easiest thing to do is uninstall any old versions and update to the latest Mylyn. Your tasks won't be lost, because by default they are stored in the <workspace>/.metadata/.mylyn folder which will be read next time Mylyn starts correctly.

  • First, uninstall the old version of Mylyn using Help -> Software Updates -> Manage Configuration.
  • You need to Disable all Mylyn features by right-clicking them.
  • Allow Eclipse to restart after the last is disabled.
  • After restart, ensure that the 3rd toolbar button is pressed (figure below) so that you see the disabled features to uninstall.
  • Uninstall all the disabled features using the popup menu.

If you don't uninstall, the the Update Manager will think that you have the latest and tell you that there are no updates.

Note: manually removing the plug-ins and features can lead to configuration errors.

After uninstalling, update Eclipse by adding the correct update site specified at on the download page, and after that automatically or manually updating will install the correct version.

Mylar-eclipse-manage-configuration.gif

What do I need to do in installation to be able to use Mylyn task management features with bug/task/issue trackers?

When you install, make sure that you select a connector for your bug/task/issue tracking software. For example, to use Bugzilla, you have to install the Bugzilla connector component.

I've installed Mylyn ; why can't I see anything different?

The two most likely possibilities are:

  1. You don't have any Mylyn views open. Select Window -> Show View -> Other, then select Mylyn and you should see the available Mylyn Views.
  2. If you still don't see anything, then perhaps you aren't using the JDK1.5 VM (or later). See configuring Java.


What does the error "Network connection problems encountered during search" mean?

If you get that message while trying to download Mylyn, it means that Eclipse couldn't find the location you entered. This might be because you copied something incorrectly (watch for extra characters -- even extra spaces can cause errors), or because the site went down. You may be able to see if the site is up or down by copying the URL into your Web browser.

What does the "Update manager failure" message mean?

It means that Eclipse could not access the update site, or that it got confused about the configuration state of your Eclipse. First try updating again to see if the update site is accessible.

If you are trying to update the JIRA connector you can also try de-selecting that feature in case the Tigris.org update site is not accessible. Using Search for new features to install.. when installing can help to avoid this problem. If that does not work see the feature configuration troubleshooting below.

What does "Could not create Browser page: No more handles (java.lang.UnsatisfiedLinkError: ...)" mean?

It probably means that you are running Linux and don't have Eclipse and a Web browser configured to work together. See [installing a browser on Linux].

When downloading, why do I get a warning that the feature was unsigned?

Signing plugins requires extra administrative details with eclipse.org which most plug-ins seek to avoid.

N.B.: Security issues with features should not be underestimated. Eclipse allows users to download new functionality from remote servers. A rogue plug-in can act as a perfect Trojan horse. It can look innocent enough and provide useful function while spawning threads in the background with full access to the local file system and the Internet (if connected). Beware of installing features from update sites you do not trust.

What does "Root exception: java.lang.UnsupportedClassVersionError: org/eclipse/mylar/tasklist/MylarTasklistPlugin (Unsupported major.minor version 49.0)" mean?

It probably means that the virtual machine is JDK1.4 or lower. See download and configure Java.

Why am I getting messages in my <workspace>/.metadata/.log or my Mylyn view that say things like "java.lang.NoSuchMethodError: org.eclipse.ui.internal.dialogs.FilteredTree.getFilterControl()" and "The activator org.eclipse.mylar.java.MylarJavaPlugin for bundle org.eclipse.mylar.java is invalid"?

This probably means that your Mylyn download version didn't match your Eclipse download version. Note that the download site has different downloads for Eclipse 3.1 and Eclipse 3.2.

To fix this problem, see the uninstallation guide, then re-install from the correct download site.

What does "Could not create Bugzilla editor input" and "java.io.IOException: SAX2 driver class org.apache.xerces.parsers.SAXParser not found" mean?

It probably means that you are on MacOS, and for some reason are missing Xerces from the Mac JDK1.5. You will probably need to add it to your default classpath. Please refer to and comment on bug 144287 if you see this problem.

To ensure that you are using the 1.5 VM refer to the last comment on bug 1163477 for instructions on how to change the 1.4 default.

I've just updated to Mylyn 2.0 and I don't see any tasks in my Task List

As part of the update to Mylyn 2.0 the old data folder has been migrated to <workspace folder>/.metadata/.mylyn from the old location <workspace folder>/.mylar. IF for some reason migration failed (.mylar folder still exists), simply shut down Eclipse and manually move your old <workspace folder>/.mylar folder to <workspace folder>/.metadata/.mylyn (note the name change to .mylyn)

Configuration Troubleshooting

How can I change the number of editors left open before Mylyn starts closing editors?

Turn off or increase the number of editors to leave open using Preferences -> General -> Editors -> Number of opened editors before closing. Since Mylyn will manage the open editors with task activation, this number can be set higher or you can disable automatic closing entirely.

Do I need the Outline View when running Mylyn?

No, not really. The Package Explorer and folded signatures should provide enough context for you. If, at some point, you really need to see an Outline View, you can always enter (Ctrl+O) to show the in-place Outline View.

What does the message "content assist proposals no longer appear" mean?

This usually happens when uninstalling when using Eclipse 3.2. Make sure that the "Java Completions" and "Java Types" proposal categories are included in the default proposals via: Preferences -> Java -> Editor -> Content Assist -> Advanced -> Restore Defaults. Also see: content assist troubleshooting. This bug has been fixed in Eclipse 3.2.1.

Why do I get errors like "HTTP Response Code 407" or "Proxy Authentication Error" when accessing repositories through a proxy server?

It is likely that you need to configure these proxy server settings. Select Window -> Preferences -> Install/Update, and update the section in the "Proxy settings" section of the form.

I can't use Ctrl+Alt+Shift+Arrow Up for Mark as Landmark. What do I do?

This is usually a Linux/GNOME problem, where the Gnome keyboard shortcuts are interfering with the Eclipse shortcuts. Go to the Keyboard shortcuts (which might be something like Desktop -> Control Centre -> Keyboard Shortcuts or System -> Preferences -> Keyboard Shortcuts) and disable both of these shortcuts:

  • Move one workspace up
  • Move one workspace down

See also: keyboard mappings on Linux.

How do I turn on spell checking?

See spell checking.

Uninstall troubleshooting

When uninstalling in Eclipse Mylyn via the Help -> Software Updates -> Manage Configuration dialog you will need to uninstall dependencies first (e.g. Bugzilla Connector, Subclipse integration) and then uninstall the core Mylyn features.

When uninstalling manually by deleting all of the Mylyn plug-ins and features from the eclipse/plugins and eclipse/features directory make sure to delete all of the plug-ins and then restart Eclipse with the -clean option (e.g. by inserting it into a shortcut or the eclipse.ini file.

On Eclipse 3.1: you may need to reset the Java editor to be default for .java again via: Preferences -> General -> Editors -> File Associations

On Eclipse 3.2: if after uninstalling content assist proposals no longer appear you need to ensure that the Java Completions and Java Types proposal categories are included in the default proposals via: Preferences -> Java -> Editor -> Content Assist -> Advanced -> Restore Defaults. Also see: content assist troubleshooting. This bug has been fixed in Eclipse 3.2.1.

I am seeing java.lang.OutOfMemoryError: PermGen space errors, what's wrong?

If your Eclipse crashes, or you see the above error after installing Mylyn or other plug-ins, you have most likely hit the infamous MaxPermSize bug. This is not a Mylyn specific problem, but a general Eclipse problem that is often triggered on Eclipse 3.2 and later, if you have many plug-ins installed and are using a Sun JVM.

To fix it simply add the following to your launch arguments. This is usually to your shortcut:

   -vmargs -XX:MaxPermSize=128M

Or to the eclipse/configuration/config.ini file:

   -XX:MaxPermSize=128M

If you are using a large number of plug-ins (e.g. WTP) you may need to increase the number to more than 256M (note that the size must be a power of 2).

Eclipse 3.3.1 users: note note that due to Platform bug 203325 you need to use the instructions above and cannot set the size using -launcher.XXMaxPermSizeL, which will be ignored.

For more information see the Eclispe FAQ entry. Details of the problem are on Platform bug 92250.

What is Mylyn's performance profile?

Mylyn should have no noticeable effect on Eclipse's speed or memory usage, no matter how large your workspace is. You do not need to increase the amount of memory Eclipse runs with to use Mylyn. Any performance issue should be reported as a bug.

The current performance profile is:

  1. Mylyn only runs if a task is active, and has no impact on Eclipse if no task is active.
  2. Task context models have negligible memory overhead.
  3. When a task is active, additional view refresh is required to update the views based on interest model changes. This should not be noticeable on Windows where refresh is very quick, but could be more noticeable on other platforms.
  4. The time to activate a task context is dominated by the time it takes Eclipse to open the editors in the context. You can set the preference for how many editors to open in the Mylyn preference page (e.g. setting to 1 will dramatically reduce activation time, but also remove the benefit of having open editors correspond to the task context). You can also turn off editor management entirely in the Mylyn Tasks view pull-down.
  5. Eclipse startup is slowed down by (4) if a task is active when Eclipse is shut down.
  6. The low priority background searches that the Active Search view runs can be noticeable on slower machines.

If you are seeing performance problems, this is either a bug or caused by other performance problems in Eclipse. If you are performance problems we suggest increasing the amount of memory available to Eclipse. This is especially useful for very large Java project workspaces, on which the size of JDT's element cache will grow proportionally to the amount of available memory. The setting we recommend for launching workspaces with a couple hundred large projects is:

 -Xmx768M -XX:MaxPermSize=128M

Task List

Why won't the Archive category disappear?

The Archive category will automatically appear if a task needs to be shown, but is not in any query or category. In order to ensure that you do not miss reminders or notifications the following tasks will always be shown in the Task List, even if they have been removed from a category or a query:

  • Tasks scheduled for this week or overdue. Remove these by using the Schedule pop-up menu option to defer them to a future week or to clear the schedule.
  • Repository tasks that have incoming changes, such as comments. Remove these by reading them or marking them as "read" via the Mark -> Read pop-up menu.

The Archive category contains many irrelevant tasks, how do I clean it up?

If you created very broad queries you could end up with thousands of tasks in the Archive category. Other than clearing the workspace/.metadata/.mylyn/tasklist.xml.zip and workspace/.metadata/.mylyn/offline folder (note that this will entirely reset your Task List) the easiest option is to:

  • Clean up your queries to include only tasks of interest (note that including completed/resolved tasks is recommended).
  • Turn off Focus on Workweek in the Task List.
  • Turn off the Filter Archive Category option in the Task List view menu.
  • Delete all of the unneeded tasks from within the Archive category. Note that if the tasks are not matched by queries they will be deleted permanently and any local notes or scheduling information that you have added to them will be lost.

How does Mylyn count the active time for a task?

Whenever you work on a task, Mylyn accumulates the time you spend actively working on a task. This time can be viewed in the Personal Planning section of the Task Editor. When you are not interacting with Eclipse, the timing automatically times out after 3 minutes by default. This means that activity outside of Eclipse will not be captured when you work on the task and that the timings in Mylyn are a lower bound of the total time spent on the task (capturing timings for work done outside of Eclipse involves OS specific extensions).

How do I prevent long-running tasks from adding to the progress bar?

If you have many long-running or recurring tasks scheduled for this week, they can affect the Task List weekly progress bar. This can be misleading as they may never be completed. The current work-around to prevent long-running tasks from being included in the weekly progress bar is to schedule their estimated time to be 0 (zero). Alternatively, you can schedule only the amount of time you plan on spending on that task this week.

Does the Task List replace the Eclipse Tasks view?

The SDK's Tasks view is used for showing markers such as 'todo' tags which indicate a local problem with a resource, similar to a compiler warning. As such, these 'tasks' are at a much lower level of granularity than Mylyn's tasks, and one task could involve cleaning up multiple todos. In order to make working with only the markers in a particular task context, e.g. for clean-up before committing, the Apply Mylyn filter is available for both the Problems and the Tasks views.

What if I use multiple workspaces?

Mylyn's support for multiple workspaces is currently limited (see bug 130658 for a discussion) because the Task List is considered to be specific to the person, and not to the workspace. We recommend configuring your Eclipse workspace to use working sets instead of relying on multiple workspaces.

If using a single workspace is not possible you can do the following:

  • In Preferences -> Mylyn -> Task List set the Data Directory to be a shared location, and do this for both workspaces.
  • Be sure to avoid launching both Eclipse workspaces at the same time, as changes in one workspaces could overwrite the Task List in the other workspace.
  • If you upgrade Eclipse or move your workspace and don't see your tasks, check the Data Directory setting.

How do I export my task and repository data?

Export via File > Export > Mylyn > Task Data

Why does Mylyn use the term "task"?

There are many work items that make up the developer's workday. Many issue trackers and project management tools refer to these as: bugs, defects, actions, tickets, stories, enhancements, and the list goes on. We refer to all such work items as "tasks" because the word tasks is short and commonly used in time management tools. Task Repository connectors can customize the presentation of tasks, for example, indicating which is a defect and which is an action item.

Why are closed tasks not greyed out on Linux?

If you are running Eclipse from KDE go to KControl -> GTK Styles and Fonts and select "Use another style" in the GTK Styles section (bug 206399).

Task Editor

When I submit a new bug to eclipse.org the priority isn't updated?

Eclipse.org's Bugzilla repository forces all new bug reports to priority 3 (P3) regardless of what is selected in Mylyn. Eventually we will disable this field in the new bug editor for bugs.eclipse.org and provide a tooltip with explanation ( bug 204630 ).

Why am I seeing strange boxes where I expect to see proper characters?

If for example you aren't seeing the proper single quote chacters in the summary of [bug#197644], check that the encoding is set correctly for the repository in the asociated Task Repositories view (Properties > Additional Settings > Character Encoding). For bugs.eclipse.org/bugs set your charcter encoding to ISO-8859-1.

Task Repositories

What if I'm not using a Task Repository?

Mylyn does not require the use a of a task repository and can be used entirely with the Local Tasks repository that it comes bundled with. However, if working with a team, a shared Task Repository provides the key infrastructure needed to let your team work in a Task-Focused way via Mylyn's collaborative facilities.

Those not currently using another supported Task Repository should consider the repositories currently supported by Mylyn as well as those supported by the third party Mylyn extensions.

What if Mylyn doesn't support my task/bug/issue/ticket repository?

To see support for your repository faster, do a search of the open repository connector requests and vote for the corresponding bug if your tracker is there, or create a new bug.

Generic Repository Connector, allows creating Queries to the web-based issue tracking repositories and get list of issues from the web UI into the Task List.

It is also possible to link a local task with the web page in web-based repository via the Mylyn Web integration.

To create a task from any web-based repository:

  • Drag the URL from the address bar of the browser, or from a hyperlink in a bug listing to the Mylyn Tasks view. This will create a task for the bug, link it to the page, and populate the description with the title of the corresponding page. In Mozilla: simply drag the URL. In Internet Explorer: you must have Ctrl pressed in order for Eclipse to recognize the drop.
  • Alternatively, you can copy the URL, press the New Task button on the Mylyn Tasks view. This has the same effect as above but you can edit the description after retrieving it.
  • Opening the task will now open the corresponding issue. You can also right+click the task and select Open in External Browser.

Mylar-tasklist-weblink-editor.gif

Why were my repository credentials reset?

If you upgrade Eclipse or your Java VM, you will need to reset your credentials in the Task Repositories view because these are stored in the secure Eclipse workbench keyring. Also see bug 149607. If you are migrating from Eclipse 3.2 to 3.3 note that you will need to use a different update site, which is listed here: http://eclipse.org/mylyn/dl.php

Why are my updated repository attributes not showing up?

Your server's repository attributes can change frequently, for example, there can be a new "milestone" or "version" added to the Bugzilla repository with each release. When the Preferences -> Mylyn -> Task List -> Synchronization setting is enabled, every 10th synchronization will update the attributes from the repository. If you do not have this setting enabled, your can force the update via the Update Attributes action on the task repositories' context menu in the Task Repositories view. Note that you will need to reopen a task editor to see the updated attributes. If you instead update via the button on the Attributes section of the Task Editor the attribute settings will be reloaded without needing to reopen.

Authentication Troubleshooting

You must ensure repository credentials are filled out correctly. Refer to the diagram below:

AuthenticationTroubleshooting2.png
  1. Enter the repository URL (i.e. https://bugs.eclipse.org/bugs) and an optional label
  2. Credentials
    • Usually email address and password
    • Some sites, such as dev.eclipse.org, use anonymous logon with password left blank.
  3. Http Authentication (optional)
    • Some sites are protected by either BASIC or DIGEST http authentication. If this is the case, enter appropriate credentials here.
    • One way to test if the site requires http authentication is to point your browser at the repository. If you are presented with an authentication dialog popup, the site is likely protected by http authentication.
  4. Proxy Server Configuration (optional)
    • By default Mylyn uses the Platform's Install/Update proxy settings. Uncheck this box if you wish to use an alternative proxy.
    • If the proxy requires authentication, this is where you enable and enter your proxy credentials.
    • If you are experiencing connection problems, ensure your Install/Update proxy settings are valid or the repository specific settings are correct
    • Mylyn has been tested with HTTP proxy servers. Currently SOCKS is not supported.
  5. Validate Settings
    • Press the validate button to test the settings
    • If you are seeing errors like "HTTP Response Code 407" or "Proxy Authentication Error" it is likely that you need to configure proxy settas as described above.
    • If your sever uses a certificate and fails to connect, e.g. you see exceptions sun.security.validator.ValidatorException: PKIX path building failed then you need to point Eclipse at your certificate, see below.

Certificate authentication

In order to use client certificates for authentication you need to create a Java keystore and import your existing certificate to it. This command will import your certificate from /tmp/certificate.pem and create a keystore in /path/to/.eclipsekeystore.

keytool -import -keystore /path/to/.eclipsekeystore -file /tmp/certificate.pem

See this page for links to the keytool documentation.

Add the path to the keystore to your eclipse.ini in your eclipse install directory:

-Djavax.net.ssl.keyStore=/path/to/.eclipsekeystore

If your keystore is protected by a password add that as well:

-Djavax.net.ssl.keyStorePassword=123456

More instructions on this blog.

NTLM authentication

For NTLM authentication to work a special format for the username needs to be used where DOMAIN needs to be replaced by the Windows login domain:

DOMAIN\username 

The built-in NTLM support of the JDK which is used by Eclipse does not work with Mylyn since it uses the HttpClient library to access repositories. Limitations in regard to NTLM authentication are documented in the NTLM FAQ and also discussion on bug 201911.

  • If your repository uses MS NTLM authentication and only standard http authentication is being passed to the repository this can result when the local hostname cannot be resolved. Ensure your machine's hostname is set correctly and resolves to a valid address.
  • It is not possible to use NTLM authentication for the proxy as well as for the repository.

If NTLM authentication fails the NTLM Authorization Proxy Server has been reported to work with Mylyn.

Why are task hyperlinks not working?

For task hyperlinks in textual editors (e.g. Java editor) and other text viewers (e.g. History view comments) you must associate the project that contains the resource to the task repository.

Project association can also come from 3rd party metadata trough the contrubuted extension point. Subclipse and Maven integration for Eclipse plugins contributing it. See few more details here.

Note that to view a hyperlink you must hold down the Ctrl key when hovering over the reference to the task. References to tasks are connector specific and the common reference is found on the top left of the task editor and other conventions tend to follow those used in the web UI (e.g. "bug 123" for Bugzilla, "ABC-123" for JIRA).

Mylyn-project-repository-association.gif

Bugzilla Connector

What versions are supported?

We recommend using the latest release of Bugzilla.

  • Bugzilla 2.18.6 is the lowest version of Bugzilla supported. If you are getting errors that indicate failure to update attributes this may be an indication that the Bugzilla server is not supported (< 2.18.6).
  • If you are using Bugzilla 2.18 and are getting mid-air collisions this is likely due to incorrectly formatted timestamp field in the underlying bugs database table (bug 149513). This can be resolved by upgrading to Bugzilla 2.20 or later.

Why are queries failing?

  • If queries are not working correctly ensure that you have the right Bugzilla server version selected for the corresponding repository: Task Repositories (View) -> right+click the repository -> Properties. For supported versions see the download page. If the repository is still not functioning it may be due to authentication or connectivity problems. If that does not resolve the problem please post a message to the newsgroup or submit a bug.

Why do I see my old username?

If you change the username/email address on your Bugzilla account you may notice that some tasks still have the old username/email. Explicitly synchronize the task via the Task List popup menu or Task Editor toobar in order to update your username.

Why do tasks fail to open?

  • If upon opening a bug, the Bugzilla tab only displays a warning "Could not download task data, possibly due to timeout or connectivity problem. Please check connection and try again.", ensure that your repository is returning XML data by pointing your browser to <your-repository-url>/show_bug.cgi?id=1&ctype=xml to show the contents of bug 1 in XML form. The Bugzilla client requires that bugs be accessible in XML form. If the repository doesn't support xml then it is likely that the repository is too old (Mylyn currently supports Bugzilla 2.18 and later).
  • If reports fail to load or reports fail to synchronize (task description remains italic), check the error log for a "File not found" error pointing to bugzilla.dtd or a "Failed to retrieve products from server" error message, these can result when
    • the urlbase parameter is not set on the bugzilla server
    • your urlbase parameter is incorrect, e.g. it contains index.cgi
    • your bugzilla installation is missing the bugzilla.dtd file. See: bug#161759


  • If attributes are missing options in the bug editor (ie. missing a recently added milestone, bug# 155431):
    • Update attributes by choosing Update Attributes from the context menu in the Task Repositories view
    • Synchronize the task in the Task List
    • Reopen the task - new options should be available.

Why do tasks fail to submit?

  • Error upon submit: unable to make any match for name/email entered. If your bugzilla is configured for user names rather than full email address the QA Contact field will cause the submit to fail (bug# 166555). To resolve, select 'Local users enabled' option on the Repository Configuration page.
  • If tasks fail to submit with credentials error, but the repository validates fine, make sure that you've correctly setup your account's username and password and are not using the HTTP authentication fields instead.
  • If tasks fail to submit with credentials error, but the repository validates fine, make sure that you've correctly setup your bugzilla instance's cookie domain under the required settings. The cookie domain must lead with a dot.
  • If attachments are failing to submit and you see that after processing the attachment, the bugzilla bug shows a size of "bytes" (no numbers), your database may be dropping the packet sending the file. On MySQL, check the max_allowed_packet directive. You may see errors like: DBD::mysql::st execute failed: Got a packet bigger than 'max_allowed_packet' bytes [for Statement "INSERT INTO attach_data (id, thedata) VALUES (38, ?)"] at /path/to/bugzilla/attachment.cgi line 993. Also, check the maximum attachment size in Bugzilla Parameters -> Attachments.
  • If a submit fails with an Invalid Username or Password error even though repository settings do validate, make sure that cookies could be set. See also bug 175502

What time zone is used in the task editor?

  • The times that appear in the Bugzilla bug editor (ie. created, modified) are local to the server hosting the Bugzilla repository, not your local machine's time zone.

Known limitations

  • The usermatchmode is not currently supported (bug 168204) and as such full email addresses need to be used.
  • The usevisibilitygroups parameter is not supported (bug#180876). Group assignment will currently be lost if updated using the Bugzilla rich task editor.
  • Version 1.0 of Mylyn presents an error message upon new comment submission to RedHat's public Bugzilla repository. The comment is in fact posted. This issue is resolved in Mylyn 2.0M2 and higher. (bug#183251)

JIRA Connector

If you see errors like the following, work around this by opening repository Properties Page and clicking OK (bug 169102).

 org.tigris.jira.core.service.exceptions.AuthenticationException
 at org.tigris.jira.internal.core.service.soap.SoapJiraService.getProjectsNoSchemes(SoapJiraService.java:204)

What are the server requirements?

The JIRA SOAP/RPC services have to be running on the JIRA server:

  • Jira 3.3.3 or higher (3.7 or higher for attachment retrieval)
  • Jira RPC plugin 1.4.3 or higher

Latest information also available on the download page.

Related Resources:

Why can't I connect?

  • If you get a org.tigris.jira.core.service.exceptions.ServiceUnavailableException you need to turn on the JIRA SOAP/RPC services on the server.
  • Similarly, if you get a "Processing instructions are not allowed within SOAP messages" message, ensure that SOAP/RPC services are on.
  • If you get a 503 error code verify that the SOAP/RPC interface is enabled.
  • If you get a 403 error code verify that the SOAP/RPC interface is enabled, and also check your authentication mechanism. If the server is using NTLM authentication, see bug 156937 for diagnosis steps.
  • If you see an "unrecognized priority" message in the Error Log, the problem is that the JIRA Connector does not support customized priorities so the priority value specified in that message will not correspond to the priority icons visible in the Task List.
  • If you are being prompted for your log-in credentials by the Browser tab of the task editor or the new task editor, this is because without rich editor support the connector is using the web-based UI instead of logging in on your behalf as is done with a rich task editor (bug 142869).
  • If you get a AuthenticationException and a query won't synchronize, use Task Repositories (view) -> Properties (on the repository) -> Validate Settings. This will clear the connection if it died.

Why do I get a "JIRA connector requires server 3.3.3 or later" message?

Version 2.0 of the Jira connector misinterprets version 3.10 as being lower than version 3.3.3. This is fixed in version 2.1 of the connector. Mylyn 2.1 is not compatible with Eclipse 3.2, but Eclipse 3.2/Mylyn 2.0 users can download a later version of the Jira connector from the weekly build download site; the latest Jira connector supports Mylyn 2.0 and Eclipse 3.2. If you get a NullPointerException from the update manager, make sure you've only searched the weekly download Extras site; don't search the 2.0 site at the same time.

Known limitations

  • Attachment retrieval (including retrieval of the task context and attachment list in the task editor) require JIRA 3.7 or above (bug 169757)
  • Customized priorities are not currently supported, so all issues with a customized priority will have the default priority level (bug 165518).
  • blank but editable custom fields doesn't appear in the RSS data, and as result we can't show them for editing
  • because of JIRA api limitations, we can support custom fields in the task editor, but not in the new custom task editor
  • Mylyn only allows the usage of US-ASCII characters in the filename when uploading an attachment (bug 203663)

How can I enable compression for SOAP messages?

If your repository has lots of projects and components you can speed up the download of the repository configuration by enabling compression.

  • Add a filter-mapping to your JIRA server configuration: [1].
  • Enable compression in your global JIRA configuration.
  • Check the compression setting for your task repository in Mylyn versions 2.0M2 and later.

Reporting issues

Since JIRA can be heavily customized there is a chance that some particular customizations may not work, so if you can't connect to your proprietary repository it is a good idea to try the following public repositories to make sure you have working configuration:

If you can't get query results, you could try to call "Open with Browser" on query node in the Task List view and then save link "Current view: XML" and attach it to the bug report.

Even if query don't work you could try "Open Repository Task" from your JIRA repository node on the Task Repositories view and check if you can open JIRA task editor for that issue. Same for the Task search (Ctrl-H, Task Search)

To investigate various error you may need to enable debug tracing. To do that you need to create the .options file with the following content:

  org.eclipse.mylyn.jira.ui/connector=true
  org.eclipse.mylyn.jira.ui/dataHandler=true

and then add the following options to the Eclipse command line (or eclipse.ini file):

  -debug <path to the .options file>/.options

The additional logging will go into the regular Eclipse log and the Error Log view

Why do I get errors about an unexpected redirect when submitting an issue?

Please go to the repository properties and validate the repository. If errors about circular redirects are logged in your Eclipse error log your JIRA server or proxy might be misconfigured.

In some cases unexpected redirects can be caused by a JIRA server accessed via Apache and mod_jk (using the AJP/1.3 Tomcat connector). Some server configurations may benefit from the 'proxyHost', 'proxyPort', 'scheme' and 'secure' settings on the AJP Connector in the Tomcat server configuration.

Please see bug 202834 for a more details.

Trac Connector

What are the server requirements?

The Trac connector offers two access methods:

XML-RPC (recommended)

Requirements:

This access method offers editing of tasks in a rich editor, attachment support and offline editing. It requires the XmlRpcPlugin for Trac to be enabled for the accessed repository. The XmlRpcPlugin provides a remote interface to the Trac repository and is distributed separately from Trac (see #217). See these install instructions for requirements and documentation.

Web

Requirements:

  • Trac 0.9 or later

In this mode the standard Trac web interface is used for repository access. Tickets may be created and edited through a web browser. Offline editing and attachments are not supported.

Recommended Trac version

Mylyn should work with any stable release Trac release that is version 0.9.x or 0.10.x (see below for known limitations). Mylyn works best when used with Trac's XML-RPC Plugin (see above) but we do not recommend a particular Trac version.

The Trac connector tests are run against these Trac versions:

  • Trac 0.10.4, XML-RPC Plugin rev. 1950
  • Trac 0.9.6

See bug 175211 for details about Trac 0.11 support.

Why do I get an HTTP Error 500 Internal server error when creating a ticket that contains non-ASCII characters?

Problems related to character encodings have been reported when Trac is run with Python 2.3. Upgrading to Python 2.4 may help to resolve this. Please comment on bug #188363 if you encounter an internal server error when creating a ticket that contains non-ASCII characters.

Known limitations

  • Trac 0.10.1
    • Known incompatibility with Trac XML-RPC Plugin. See bug 164272 for details.
  • Trac 0.10.3
    • Known incompatibility with old versions of the Trac HttpAuthPlugin (fixed in revision 1890 or later). The plug-in enables basic auth for XML-RPC when Trac AccountManagerPlugin for form based authentication is used. See bug 168413 for details.
  • Trac 0.11
    • Currently untested.
    • Known incompatibility with Trac XML-RPC Plugin See [2] for details.

Why are tasks opened in a web browser and not in the rich editor?

Please make sure that the access type in the repository properties is set to XML-RPC. This requires Trac 0.10 and XML-RPC (see above).

Which URLs does Mylyn access in a Trac repository?

XML-RPC:

  • The expected URL is either /xmlrpc or /login/xmlrpc (if login credentials are provided)

Web:

  • Authentication: /login
  • Querying: /query?format=tab...
  • Synchronizing ticket details: /ticket/...
  • Getting repository configuration to populate query dialog: /query or /newticket

The web mode relies on screen scraping and is likely to fail if the design (i.e. HTML output) of the Trac repository is heavily customized.

Generic Web Repository Connector

Where can I find the web repository connector

It is available from the extensions update page. Please see http://www.eclipse.org/mylyn/downloads/

Why can't I connect using one of the existing templates?

The Web Repository Connector have a Preview option in Advanced Configuration section on the Query preferences. If you get an error or preview table does not show expected list of tasks you can use Query Pattern like (.+?)(\n) to see content of the retrieved page and compare it with the source of the web page for the same url loaded into the web browser.

If that does not help then you could use the wget tool (on Windows it available as a standalone command line tool and also included with Cygwin).

Run the following command:

wget -v -d -o query.log -O query.html "http://your.query.url"

If repository require basic http auth, you'll need to use --http-user=USER and --http-password=PASS options.

Then open file query.html in the web browser and check if it show list of issues you need to fetch from the web server. If it does have correct list, then there could be a problem with query pattern used for parsing.

A popular mistake is an unmasked '?' that separates request parameters in the url). For example:

<a href="show_bug.cgi\?id\=(.+?)">.+?<span class="summary">(.+?)</span>

If query.html does not show expected list of issues you can check query.log for server responses and try to identify if server require authentication, redirecting your requests somewhere or issue any other errors.

Known limitations

  • In Mylyn 1.0: if a web server responds by requesting a redirect to an absolute URL while fetching a resource, the connector falsely prepends "/" to the URL and the request will fail. The workaround is to use final url where redirect is pointing to (you can find it as describe above). See bug 167282 for details.

Task-Focused UI

What is the Task-Focused UI?

When you activate a task, Mylyn automatically maintains a task context by monitoring your interaction. The task context provides a predictable degree-of-interest weighting of the relevance of the elements and relations that you work with to the task-at-hand (as described in the Foundations of Software Engineering conference paper). The Task-Focuse UI is the mechanism by which Mylyn presents Mylyn the task-context model in order to reduce information overload and to automate the manaul management of UI elements like editors and change sets. Examples:

  • Filtering, decoration and expansion management in views
  • Automatic folding in editors
  • Ranking in content assist
  • Editor management
  • Perspective management
  • Change set management

Why do files disappear from Focused views when I close them?

By default Mylyn automatically manages the set of open files to match the task context, so that you don't have to. This ensures that the editor list (viewable via mechanisms like Ctrl+E) corresponds to what you in views like the Package Explorer when they are in Focused mode. When you close a file manually, you express that it is uninteresting, and as such it will be removed from the task context. It will also disappear from the corresponding automatically managed change sets for the same reason. This behavior can be turned off via Preferences -> Mylyn -> Context -> Manage open editors to match task context. However, it is highly recommended since Mylyn will prevent the number of editors from bloating by automatically closing editors for elements that have decayed in interest, and always keep the editors for interesting elements open.


Why did all my editor tabs disappear?

When you deactivate a task, all editors will be closed, and then when you reactivate the task all the windows will be open again. Try it, it's fun.

Mylyn actively manages your open editors with task context. It takes some getting used to, but enables switching between tasks when you are multitasking without cluttering your editor tabs. This editor management can be disabled via Window -> Preferences -> Mylyn -> Context. However, before disabling it consider reading the "Managing open editors..." section of Task-focused programming with Mylar.

How do I get rid of an element if it is not interesting?

When a view is focused elements will disappear on their own if they are not repeatedly selected via a mechanism called interest decay. Note that decay does not use the wall clock, but instead relies on the number of selections that you have made when working on that task to determine which elements disappear. This helps make it feel very predictable.

If you want want to force one or more elements to disappear from the context use the Remove from Focus action on the context menu. Note that the element will still be part of the task context since it was previously part of the interaction.

If you want to permanently delete the element from the interaction history use the Remove from Context action on the Context tab of the Task Editor. For example, if a company private element was part of a task context that is to be shared with a public repository, this action can be used to clean it up before sharing. Note that elements will be removed from the task context recursively.

Which Focused UI features can I turn off?

All of them. When no task is active neither are any of Mylyn's features. When working with task contexts Mylyn's Focused UI features are all optional and in general configurable. While many find it the key benefit of Mylyn, the entire Focused UI is optional and can be uninstalled via Help -> Software Updates -> Manage Configuration.

The following table summarizes how the key features can be toggled:

UI Mechanism Example/description Toggle using
Interest filtering Package Explorer Apply Mylyn button on view toolbar
Automatic toggling of filtering Package Explorer Preferences -> Mylar -> Context -> Toggle focused mode..
Interest decoration Bolding of landmark elements Preferences -> General -> Appearance -> Label Decoration
Content assist Ranking of interesting elements Eclipse 3.2: Java -> Editor -> Content Assist -> Work in Progress -> turn off Mylyn, turn on Java
Active change sets Grouping of changes by tasks Preferences -> Mylyn -> Team
Editor management Auto opening/closing of editors Preferences -> Mylyn -> Editor Management
Active views Active Search and Hierarchy Only on if view is active

For additional configuration options see the Mylyn and General -> Appearance preference pages.


What happened to the Active Search and Active Hierarchy views?

These views were not included in the Mylyn 1.0 release because they never made it beyond the experimental phase.

  • The Active Search view has not been sufficiently tuned to adapt to the lifecycle of a task context, and as a result requires manual manipulation of the degree-of-separation scope as you work on long-running tasks. Otherwise it becomes overloaded with elements. In addition, it is not yet clear whether an additional view is the right UI for this facility, and it is hard to find room for an additional view of this size on screen resolutions of 1600x1200 and smaller.
  • The Active Hierarchy view is also hard to allocate space for, especially when using the in-place hierarchy (Ctrl+T) on a landmark can be a quick way to see the relevant part of the task context's hierarchy.

These features still show promise in displaying task context and saving repetitive searches, so we have not removed them. They have instead moved to the Mylyn Sandbox, and can be used and experimented with by following the instructions on the Contributors page. For feedback on these views please use the corresponding bug reports or newsgroup.

Java Development

Content assist troubleshooting

Mylyn uses custom Content Assist processors in order to rank and separate the elements in the current task context. To see proposals ranked according to interest you must have only the Type Proposals (Mylyn) kinds checkbox enabled in the list below, otherwise you will see duplicates. If you do not see any proposals, check this list to ensure that either the Mylyn or the plain proposals are enabled. To do this automatically, run New -> Mylyn -> Recommended Preferences. Or you can select them manually as in the preference page below.

Mylar-content-assist-prefs.gif

Why do I see duplicate proposals?

Ensure that you have only the (Mylyn) proposals kinds enabled in Window -> Preferences -> Java -> Editor -> Content Assist -> Advanced, otherwise you will see duplicates.

If you use proposals via Ctrl+Shift+Space instead of the typical Ctrl+Space you will see duplicates. Vote for JDT/Text bug 147781 if you use this mechanism. Also see: bug 129080

Why do I get an error message when using content assist?

If after invoking Content Assist you see an error message dialog that states:

The extension took too long to return from the 'computeCompletionProposals()' operation

this is most likely due to something interrupting the proposal operation (e.g. garbage collection). Ignore it if it does not recur, increase Eclipse's memory if it does (e.g via -Xmx384M command line argument). See bug 141457 for more details.

Note that Mylyn should only add a trivial amount of overhead to content assist computation, however, the standard content assist mechanism will not report timeouts of this sort (i.e. taking longer than 5s to compute proposals). If the system that you are working on is so large that increasing memeory does not reduce the timings to avoid the message, you could also consider disabling the Mylyn-specific content assist, as described above, but if doing so please comment on bug 141457.

Mylyn-content-assist-timeout.gif

Why do interesting elements not show in the Project Explorer?

The Package Presentation -> Hierarchical mode is not supported on the Project Explorer view in Eclipse 3.2 through 3.3M3 and possibly later versions (https://bugs.eclipse.org/bugs/show_bug.cgi?id=161362 bug 161362). Use the view menu to set Package Presentation -> Flat as a work-around.

How do I stop declarations from showing in the Package Explorer?

If you don't like Mylyn's constant showing of Java members in the Package Explorer, select the drop-down menu, then Filters... and enable the Mylyn Java Declarations Filter. It will then stick in the menu in case you want to toggle between modes. Note that this will hide interest information about members that aren't in your current file (e.g. showing you which methods are landmarks) so this mode is not recommended, but can be useful for 1024x768 screen resolutions.

Mylar-java-filtering-declarations.gif

Why does nothing show up in the Active Search or Active Hierarchy?

As you work, elements become Landmarks (bold decoration), and these elements populate the Active Search and Active Hierarchy views. To force an element to populate the views manually, make it a Landmark by right+clicking or hitting Ctrl+Alt+Shift+UpArrow.

Known limitations

  • Bug 106678: The Project Explorer's Hierarchical Java package presentation layout is not supported on Eclipse 3.3Mx, and interesting elements will be hidden if enabled. Work-around is to use the default Flat package presentation.

Team Support

Why does task change set not appear when I modify files?

A task change set should appear if you activate a task and modify a file connected to a compatible source repository (e.g. CVS, SVN). If it does not try the following:

If the above are working but the change set appears to be missing relevant files:

  • You may be seeing the Synchronize view's refresh problem (bug 142395). Toggle from Incoming/Ougtoing to Incoming mode and back again to refresh the view.
  • If the files or change set are still missing deactivate and reactivate the task to force a full refresh.

Why do files disappear from the change set when I close them?

If you have the Preferences -> Mylyn -> Context -> Manage open editors to match task context option enabled, Mylyn will perform editor management so that you don't have to. Closing a file makes it less interesting, and causes it to disappear from the active task context, and hence from the change set. This option prevents you from having to manage the set of open files, will automatically close editors for files that become uninteresting, and will ensure that the open editors match the task context.

Why am I missing elements when I retrieve someone else's context?

To identify elements within a project, Mylyn relies on the name of the project being consistent across workspaces. If the project name in the workspace that the context was created with is different than its name in your workspace, the task context will not show elements within that project (bug 164058). The other case where context can be lost is if the elements change names outside of the workspace ( bug 164243).

The work-around is to use the same project names across your team's workspaces. We recommend the following two approaches for standardizing on project names:

  • Use Team Project Sets: these are a very useful Eclipse facility that allows your entire team to check out numerous projects from version control by importing a single file. Create a project set via File -> Export -> Team Project Set, host this file somewhere accessible, then have others import vai File -> Import -> Team Project Set.
  • Have developers check out projects into their workspace without renaming them. The above is a shortcut for doing this. If alphabetical sort order in the Package Explorer is a problem, organize your projects via Project Explorer -> view menu -> Top Level Elements -> Working Sets.

Misc

How does Mylyn relate to IBM's Jazz?

At the EclipseCon and JavaONE 2006 conferences IBM demonstrated previews of Jazz, a collaborative team server and Eclipse-based client. Articles have remarked on the similarities between Mylyn and Jazz because both integrate tasks into Eclipse (Jazz's "work items" and Mylyn's "tasks"), and both provide change sets grouped by task. But there are both significant differences and complementary aspects to the two approaches. A key goal of Mylyn is to provide an open source framework to support integration of task management with existing issue trackers and source repositories. According to the presentations, components that come with Jazz include include a next-generation issue tracker and source repository and related lifecycle management tools such as project health. In addition, a driving and unique goal of Mylyn is to focus the UI around a usage-based and degree-of-interested weighted task context, which is complementary to the Jazz platform. Just as it integrates with Mylyn's Task List, Mylyn's Task Focused UI and task context model components are possible to integrate with other kinds of task management systems, such as the one provided by Jazz.

Update: at EclipseCon 2007 the IBM Jazz team showed a Mylyn connector for Jazz.