Scripts

dvt.sh

DVT Eclipse IDE Launcher

dvt.sh [-h[elp]] [-site site] [-bg] [-dvt_log_location <file>]
       [-workspace <dir> [-import_workspace_settings <dir> | -force_import_workspace_settings <dir>]]
       [-eclipsespace <dir>] [-heap_size <size>] [-stack_size <size>] [-options <opt>] [-eclipse_args <args> --]

 -help                                   Show this help.
 -bg                                     Launch DVT in background.
 -dvt_log_location <file>                Path to the log of stdout/sterr. Default is /tmp/dvt_log_<PID>.
 -workspace <dir>                        Path to the eclipse workspace (temporary eclipse directory).
 -import_workspace_settings <dir>        Path to the eclipse workspace from which settings will be imported.
 -force_import_workspace_settings <dir>  Same as -import_workspace_settings, but it will overwrite target workspace settings.
 -eclipsespace <dir>                     Path to the Eclipse configuration and user area. Default is /home/user/.eclipse.
 -heap_size <size>                       Set the Java heap size (syntax is <N>[g|G|m|M|k|K]). Default is 3072m.
 -stack_size <size>                      Set the Java thread stack size (syntax is <N>[g|G|m|M|k|K]). Default is 4m.
 -options <option list>                  Comma separated list of options:
                                             disable_browser                   - do not use SWT browser component and skip auto-config
                                             disable_swt_auto_config           - do not auto-config SWT GTK version and SWT browser engine
                                             disable_chromium                  - do not use bundled Chromium browser engine
                                             disable_xulrunner                 - do not use bundled XULRunner browser engine
                                             disable_webkit                    - do not use OS's WebKit browser engine
                                             disable_cairo                     - do not use Cairo advanced graphics library
                                             disable_force_gtk2                - do not force Eclipse to use GTK2
                                             disable_gtk_theme                 - do not use custom GTK2 themes generated through DVT
                                             disable_force_classic_theme       - do not force Eclipse to use the classic theme
                                             disable_gtk_scroll_overlay        - use traditional scrollbars instead of scrollbars overlayed on top of content
                                             disable_shutdown_timeout          - do not force stop JVM when shutdown exceeds 5 seconds
                                             disable_chromium_mtml             - do not use Chromium multithreaded message loop
                                             disable_chromium_launcher_library - do not use Chromium launcher library
                                             disable_chromium_early_init       - do not use early init for Chromium browser engine
                                             disable_chromium_web_security     - do not enforce same-origin policy for Chromium browser engine
                                             dump_allocated_swt_resources      - dump SWT allocated resources when 'No more handles' error is thrown
 -eclipse_args <args>                    A list of eclipse.ini arguments to be passed directly to the Eclipse binary.
                                         To indicate the end of list use -- argument.

Examples

Start DVT without any option. You will be prompted for the workspace location.

$> dvt.sh

Start DVT with the maximum heap size of 4096 MB. You will be prompted for the workspace location.

$> dvt.sh -heap_size 4096m

Start DVT in the specified workspace.

$> dvt.sh -workspace /home/$USER/dvt/workspace

Start DVT in the specified workspace and use the specified Eclipse configuration and user area (plugins installed by user on top of a shared installation).

$> dvt.sh -workspace /home/$USER/dvt/workspace -eclipsespace /path/to/$USER/dvt/eclipsespace

Start DVT with a custom configuration file. The default is $DVT_HOME/eclipse/eclipse.ini.

$> dvt.sh -eclipse_args --launcher.ini /home/$USER/dvt/eclipse.ini

dvt_cli.sh

See Command Line Interface.

dvt_kit_installer.sh

This script is a command line utility that can be used to install / uninstall plugins delivered with the DVT Kit Distros.

The script allows you to enable in a DVT distro any of the following plugins:

Available Plugins

Revision Control System Plugins:
  • CVS (org.eclipse.cvs)

  • CLEARCASE (net.sourceforge.eclipseccase)

  • GIT (org.eclipse.egit)

  • PERFORCE.2021.2 (com.perforce.team.feature) - Only in distros based on Eclipse 4.22

  • PERFORCE.2022.1 (com.perforce.team.feature) - Only in distros based on Eclipse 4.22, 4.24

  • PERFORCE.2022.2 (com.perforce.team.feature) - Only in distros based on Eclipse 4.22, 4.24

  • PERFORCE.2023.1 (com.perforce.team.feature) - Only in distros based on Eclipse 4.22, 4.24

  • PERFORCE.2023.2 (com.perforce.team.feature) - Only in distros based on Eclipse 4.22, 4.24

  • PERFORCE.2024.1 (com.perforce.team.feature) - Only in distros based on Eclipse 4.33

  • SVN (org.eclipse.team.svn)

Language Support Plugins:
  • BASH (de.jcup.basheditor)

  • CPP (org.eclipse.cdt)

  • JAVA (org.eclipse.jdt)

  • JENKINSFILE (de.jcup.jenkinseditor) - Only in distros based on Eclipse 4.33

  • JSON (jsonedit-feature)

  • PERL (org.epic.feature.main)

  • PYTHON (org.python.pydev.feature)

  • RUBY (io.github.pyvesb.eclipse_solargraph)

  • TCL (org.eclipse.dltk.tcl)

  • YAML (de.jcup.yamleditor)

Review and Task Management Plugins:
  • GERRIT (org.eclipse.egerrit.feature)

  • MYLYN (org.eclipse.mylyn_feature)

Other Plugins:
  • EDITOR_CONFIG (editorconfig-eclipse-feature)

Usage

dvt_kit_installer.sh [options] operation

OPTIONS:

    The options must be specified before the operation

        [-w|workspace <dir>]
            - Temporary workspace directory (default /tmp/)

        [-s|simulate]
            - Simulate the operation

        [-h|help]
            - Display this help

OPERATIONS:

    The operation must be specified after the options and only one operation
    can be specified followed by a list of plugins (containing at least one plugin)

    [-i|install <space separated list of plugins>]
        - Install the plugins specified in the list

    [-d|delete|uninstall <space separated list of plugins>]
        - Uninstall the plugins specified in the list

    [-li|list_installed]
        - List the plugins installed with this script

    [-la|list_available]
        - List the plugins available for this distribution

Examples

Install the plugins for GIT and C++

$DVT_HOME/bin/dvt_kit_installer.sh install GIT CPP

Uninstall the plugin for GIT

$DVT_HOME/bin/dvt_kit_installer.sh uninstall GIT

List installed plugins

$DVT_HOME/bin/dvt_kit_installer.sh list_installed

List available plugins for this distribution

$DVT_HOME/bin/dvt_kit_installer.sh list_available

Simulate the installation of the JAVA plugin

$DVT_HOME/bin/dvt_kit_installer.sh -s install JAVA

dvt_plugin_installer.sh

This script is a command line utility that can be used to install/uninstall/update plugins from any type of update site into the DVT Eclipse distribution.

Usage: $DVT_HOME/bin/dvt_plugin_installer.sh ...

    [-i|install <feature>]*
        - The name of the feature to be installed

    [-d|delete|uninstall <feature>]*
        - The name of the feature to be uninstalled

    [-u|update <feature>]*
        - The name of the feature to be updated

    [-r|repo|repository <uri>]*
        - Repository URI or filesystem path

    [-w|workspace <dir>]
        - Temporary workspace directory for this script (default /tmp/)

    [-s|simulate]
        - Simulate the operation

    [-li|list_installed]
        - List installed features

    [-h|help]
        - Display this help

Examples

Update DVT offline from a downloaded archived update site:

$DVT_HOME/bin/dvt_plugin_installer.sh               \
    repo /path/to/dvt_update_site-*.zip             \
    update ro.amiq.dvt.feature

Update DVT from online update site:

$DVT_HOME/bin/dvt_plugin_installer.sh               \
    repo https://eda.amiq.com/update/latest/   \
    update ro.amiq.dvt.feature

Uninstall a plugin (ViPlugin) from the distribution:

$DVT_HOME/bin/dvt_plugin_installer.sh               \
    delete com.mbartl.eclipse.viplugin.feature

List all installed plugins:

$DVT_HOME/bin/dvt_plugin_installer.sh list_installed

dvt_mcp.sh

This script is used to start a DVT MCP Server.

Syntax

Usage: dvt_mcp.sh connect | list | version | help ...

Connect to a DVT endpoint:
  connect [-project <project_path>] [-id <id>]
          [-heap_size <size>] [-stack_size <size>] [-vmargs <args>]
          [-trace]

    Optional arguments:
    -project      <project_path>    Set the absolute path of the project.
    -id           <id>              Set a specific endpoint to be used.
    -heap_size    <size>            Set the Java heap size (syntax is <N>[g|G|m|M|k|K]). Default is 256m.
    -stack_size   <size>            Set the Java thread stack size (syntax is <N>[g|G|m|M|k|K]). Default is 4m.
    -vmargs       <args>            Additional Java arguments.
    -trace                          Enable MCP messages tracing.

List DVT endpoints:
  list

Show MCP version:
  version

Note

A DVT endpoint is represented by an active DVT Eclipse IDE or an active DVT Language Server used by VS Code.

connect

Starts an MCP server that can connect to one or more DVT endpoints.

Note

Specifying -project <project_path> results in connecting to a DVT project with the project root specified by the <project_path> argument.

If there are multiple DVT endpoints for a given project_path (e.g. 2 Language Servers building the same project), the id argument can be used to choose the preferred DVT endpoint.

list

Lists all the available DVT endpoints.

Examples

Start an MCP server that connects to one or more DVT endpoints

# Start DVT IDE for one or more projects beforehand
dvt_mcp.sh connect