Skip to content

testforstephen/vscode-pde

Repository files navigation

Eclipse PDE support for VS Code

This extension works as a plugin of Language Support for Java by Red Hat. It provides the ability to import Eclipse PDE projects and set up the correct target platforms.

Building the VS Code extension

npm install 
gulp full_build

Requirements

Features

  • Auto import Eclipse PDE projects

    If you want to enable the PDE extension for your project, it requires you to create a javaConfig.json in your workspace root. This config file is used to tell the PDE extension about the locations of the sub projects and target platform file. Notice: Both the projects and targetPlatform are the relative path to the workspace root. See the sample below:

    {
      "projects": [
          "./pde/org.eclipse.jdt.ls.importer.pde"
      ],
      "targetPlatform": "./pde/target.target"
    }
  • Reload Target Platform

    When you right click the *.target file, it will show "Reload Target Platform" context menu. This command will trigger a job to reload the target platform. The progress of the reload job will be showed in the status bar. Anytime your local *.target file is changed, you must manually run this command to refresh the target platform.

    reloadTargetPlatform

  • Debug PDE application

    When you right click an Eclipse *.launch file, it will show "Debug PDE application" context menu. This command will calculate the launch parameters of the PDE application first, then persist them into launch.json, and finally trigger Java Debugger to launch your PDE application. Notice: to support this feature, you need leverage Eclipse to generate a debug configuration for your PDE application first, and then export the debug config as a .launch file.

    debugPDEApplication

  • Run/Debug JUnit Plug-in Test

    This extension registered menus to the Test Explorer, and allow you to Run/Debug a JUnit Plug-in Test.

    runTestMenu

    runTestExplorer

Thanks

This extension is orginally developed by Gorkem Ercan (@gorkem) and Martin Aeschlimann (@aeschli)