Question

Is there a way I can uninstall Mylyn from Eclipse PDT. It comes pre-installed and I don't think I am going to use it. So I want to take all the additional plugins out of my eclipse copy as my IDE is already running sluggishly.

Was it helpful?

Solution

The uninstall process is explained in the Mylyn FAQ

We recommend uninstalling in Eclipse via the Help → Software Updates → Manage Configuration dialog. If you get an error message when trying to uninstall, you will need to first uninstall dependencies that use Mylyn. These include things like the Subclipse Mylyn integration and the Bugzilla Connector.

You can also uninstall 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.


Recent versions of Eclipse might not allow uninstalling mylyn: see bug 327157:

I am sorry to hear that you wish to uninstall Mylyn. It is correct that most packages provided by Eclipse only have a single root feature and do allow individual components to be uninstalled.

I can assure you that Mylyn has an negligible impact on Eclipse if it is not used. If you follow the following steps none of the Mylyn plugins will get loaded on startup:

  • Close the Task LIst view,
  • Disable Mylyn Tasks UI and Mylyn Team UI under General > Startup and Shutdown

Additionally, you can remove Mylyn UI contributions under General > Capabilities by disabling the Tasks category (not all Eclipse packages provide that option).

Alternatively, you can use an Eclipse package such as the SDK that does not include Mylyn by default. Eclipse also provides a bare-bones RCP download that only has required components which can be extended as needed.

That means a manual uninstall as documented by Dawid Drozd is the only option:

OTHER TIPS

When Mylyn is not being used (i.e., no Mylyn views open and no active task) it should not effect performance in any way. If it is causing you performance problems please file a bug, as:

The Mylyn team considers any speed or memory performance overhead from Mylyn to be a critical bug. Please file a bug report: http://eclipse.org/mylyn/support/

If you want to speedup your startup without uninstalling Mylyn, since uninstalling plugins in Eclipse can be tedious, open Window -> Preferences -> General -> Startup and Shutdown and uncheck the Mylyn features.

Source: http://blog.sarathonline.com/2012/05/eclipse-indigo-without-mylyn.html

For me works great.

#cd path-to-eclipse installation
#prep
 mkdir disabled disabled/features disabled/plugins

#remove mylyn
 mv plugins/*mylyn* disabled/plugins/
 mv features/*mylyn* disabled/features/

#remove cvs
 mv features/*cvs* disabled/features/
 mv plugins/*cvs* disabled/plugins/

#remove windows builder
 mv plugins/*.wb.* disabled/plugins/
 mv features/*.wb.* disabled/features/

#if svn is used, git may not be necessary; However, there is little harm keeping it
 mv features/*egit.* disabled/features/
 mv plugins/*jgit* disabled/plugins/
 mv plugins/*egit* disabled/plugins/

Took a little longer until I got around to do it, but here's a script to enable/disable plugins/features from Eclipse for Windows. To disable Mylyn, put the script in your Eclipse main directory and do:

eclipse_pfswitch.bat disable .mylyn.

To enable it again, do:

eclipse_pfswitch.bat enable .mylyn.

You can of course do that with arbitrary targets, not only Mylyn. The script echoes which files/directories it moves.

Some notes:

  • The script uses the same method as Dawid Drozd's answer - simply moving away unwanted stuff into folders which are unknown to Eclipse. That way, everything can be restored easily. Only difference is that I chose to use a .disabled suffix for the directory names.
  • I had to use SUBST to get away with using the MOVE command, which really is what should be used here. Problem is that the names of some Eclipse directories are ridiculously long - e.g. org.eclipse.datatools.sqldevtools.schemaobjecteditor.feature_1.12.0.v201406061321-4218375LG5BJ93413 - and thus MOVE cannot operate on them, causing an The filename or extension is too long error (206).
  • Default substitution drive letter is S:. If that one is used on your system, the script will tell you and bail out. Simply adjust the subst_drive variable to another unused drive letter.
  • Be careful how you specify the target. For example, if you want to remove "Target Management", specifying tm as target will also remove some HTML-related part of the "Web Standard Tools", because tm will obviously also match html - so use .tm. instead. Conversely, if removing "Remote Systems Explorer", don't use .rse. but .rse otherwise you will miss some parts. It's always easy to go back anyway, so experiment as you wish.

Without further ado, here's the script. It's not pretty, but hey, it's batch.

@ECHO OFF
SETLOCAL EnableDelayedExpansion
ECHO Eclipse plugin/feature switcher script for Windowze (p) 2015 zb226
ECHO Inspired by https://stackoverflow.com/a/17614970/1529709
ECHO.

SET subst_drive=S:
IF EXIST %subst_drive%\ (
    ECHO ERROR: Choose another drive for substitution, '%subst_drive%' is in use
    GOTO :EOF
)

IF NOT EXIST plugins SET _check=1
IF NOT EXIST features SET _check=1
IF DEFINED _check (
    ECHO ERROR: This does not look like an Eclipse main directory
    GOTO :EOF
)

IF "%1" == "enable" SET _check=1
IF "%1" == "disable" SET _check=1
IF NOT DEFINED _check GOTO :usage
IF "%2" == "" GOTO :usage
SET mode=%1
SET target=%2

CALL :shove_it %mode% plugins *%target%*
CALL :shove_it %mode% features *%target%*
GOTO :EOF

:shove_it
SET _mode=%1
SET _type=%2
SET _mask=%3

IF "%_mode%" == "disable" (
    SET _source=%2
    SET _target=%2.disabled
    IF NOT EXIST !_target! MKDIR !_target!
) ELSE (
    SET _source=%2.disabled
    SET _target=%2
)

SUBST %subst_drive% %_target%
FOR /F %%A IN ( 'DIR /B /O:N %_source%\%_mask% 2^> nul' ) DO (
    ECHO !_mode:le=l!ing !_type:s=! %%A
    MOVE %_source%\%%A %subst_drive%\%%A > nul
)
SUBST /D %subst_drive%
GOTO :EOF

:usage
ECHO Usage:             %~nx0 enable^|disable [TARGET]
ECHO Examples:          %~nx0 disable .mylyn.
ECHO                    %~nx0 enable .mylyn.
ECHO Example targets:   .mylyn., .datatools., .tm., .cvs, .rse, .pde, .rcp, ...

In Eclipse Neon, you can uninstall Mylyn via the Eclipse Installation Details view. Just select Help ==> Installation Details, select the components to want to uninstall, and click Uninstall....

Eclipse Installation Details View

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top