|
1 | | -# vscode-java-debugx |
2 | | -vscode-java-debugx enhances Java debugging in VS Code with advanced features like macro recording, runtime insights, and dynamic method invocation. |
| 1 | +<h1> |
| 2 | + <img src="media/vscode-java-debugx.gif" alt="Java DebugX" width="100" style="vertical-align: middle;"/> |
| 3 | + vscode-java-debugx |
| 4 | +</h1> |
| 5 | + |
| 6 | + |
| 7 | +## Overview |
| 8 | + |
| 9 | +**Java DebugX** is a Visual Studio Code extension aimed at improving Java debugging by offering advanced macro recording and playback features. It allows developers to record key debugging events such as step-in, step-out, and breakpoints in a macro JSON format. This feature enables users to capture complex debugging sessions and replay them later, saving time and eliminating the need to manually redo the debugging process. |
| 10 | + |
| 11 | + |
| 12 | +## Features |
| 13 | + |
| 14 | +- **Macro Recording and Playback**: Record debugging sessions, including step-ins, step-outs, and breakpoints. Play back the recorded sessions at any time. |
| 15 | +- **Customizable Bridge Configurations**: Define custom bridge classes and methods to integrate additional debugging insights. |
| 16 | +- **Advanced Debug Insights**: View detailed, real-time debugging information in a dedicated Insights view. |
| 17 | +- **Search External Files**: Search and index external files during debugging to improve traceability. |
| 18 | +- **Customizable File Patterns**: Define which files to include when indexing external files. |
| 19 | + |
| 20 | + |
| 21 | + |
| 22 | + |
| 23 | +## Installation |
| 24 | + |
| 25 | +To install the **Java DebugX** extension in Visual Studio Code: |
| 26 | + |
| 27 | +1. Open **Visual Studio Code**. |
| 28 | +2. Go to the **Extensions** view by clicking on the Extensions icon in the Activity Bar or pressing `Ctrl+Shift+X`. |
| 29 | +3. Search for **Vscode Java DebugX**. |
| 30 | +4. Click **Install**. |
| 31 | + |
| 32 | +Alternatively, you can install it directly from the [Marketplace](https://marketplace.visualstudio.com/items?itemName=soumyaprasadrana.vscode-java-debugx). |
| 33 | + |
| 34 | +## Getting Started |
| 35 | + |
| 36 | +Once installed, the extension is activated when a Java project is opened. You can then start using the extension to record, play, and analyze debugging sessions. |
| 37 | + |
| 38 | +### Key Features and Commands |
| 39 | + |
| 40 | +- **Start Macro Recording**: Begin recording your debugging session. This will capture step-ins, step-outs, and breakpoints. |
| 41 | +- **Stop Macro Recording**: Stop recording and save the session data. |
| 42 | +- **Play Macro Recording**: Re-execute the recorded session. |
| 43 | +- **Pause/Resume/Stop Macro Playback**: Pause,resume or stop the playback of your recorded debugging session. |
| 44 | +- **Generate Sample Bridge Config**: Generate a sample configuration file to set up your custom bridge and define commands. |
| 45 | +- **Debug Insights**: View detailed insights from bridge configuration into your debugging session through a dedicated panel. |
| 46 | + |
| 47 | +You can access these commands via the **Command Palette** (`Ctrl+Shift+P`), or find them in the **JavaDebugX** menu. |
| 48 | + |
| 49 | +*You can add screenshots or GIFs of key actions here to guide users through the workflow.* |
| 50 | + |
| 51 | +## Configuration |
| 52 | + |
| 53 | +You can configure the extension by modifying the settings in your `settings.json`. The available settings are: |
| 54 | + |
| 55 | +- **java.debugx.filePatterns**: Define file patterns to include when indexing external files (e.g., `*.java`, `*.js`, `*.xml`). |
| 56 | +- **java.debugx.externalFolder**: Set the path to an external folder that you want to index. |
| 57 | +- **java.debugx.macro.stepDelayInSeconds**: Configure the step delay during macro playback. |
| 58 | +- **java.debugx.bridgeConfigPath**: Set the absolute path to your custom bridge configuration file. |
| 59 | + |
| 60 | +You can access and modify these settings in the **Settings** tab or directly in your `settings.json` file. |
| 61 | + |
| 62 | +## Views and Menus |
| 63 | + |
| 64 | +- **Insights View**: A dedicated view to show real-time debugging insights. |
| 65 | + |
| 66 | + |
| 67 | +- **Debug Toolbar**: Commands for controlling the macro recording and playback are available in the debug toolbar. |
| 68 | + |
| 69 | +*You can add a screenshot or GIF of the Insights view here.* |
| 70 | + |
| 71 | +## Example Usage |
| 72 | + |
| 73 | +### Generating a Sample Bridge Config |
| 74 | + |
| 75 | +To generate a sample bridge configuration file: |
| 76 | + |
| 77 | +1. Open the Command Palette (`Ctrl+Shift+P`). |
| 78 | +2. Search for and select **Generate Sample Bridge Config**. |
| 79 | + |
| 80 | +This will generate a new bridge configuration file in your workspace, which you can modify to create your custom bridge logic. |
| 81 | + |
| 82 | + |
| 83 | + |
| 84 | +## Development |
| 85 | + |
| 86 | +If you'd like to contribute or develop the extension locally, follow these steps: |
| 87 | + |
| 88 | +1. Clone the repository: |
| 89 | + ```bash |
| 90 | + git clone https://github.com/soumyaprasadrana/vscode-java-debugx.git |
| 91 | + ``` |
| 92 | +2. Install dependencies: |
| 93 | + ```bash |
| 94 | + npm install |
| 95 | + ``` |
| 96 | +3. Build the extension: |
| 97 | + ```bash |
| 98 | + npm run build-prod |
| 99 | + ``` |
| 100 | +4. Launch the extension in VS Code with: |
| 101 | + ```bash |
| 102 | + npm run watch |
| 103 | + ``` |
| 104 | + |
| 105 | +## License |
| 106 | + |
| 107 | +This project is licensed under the [SEE LICENSE IN LICENSE](LICENSE). |
| 108 | + |
| 109 | +## Author |
| 110 | + |
| 111 | +**Soumya Prasad Rana** |
| 112 | +Email: soumyaprasad.rana@gmail.com |
| 113 | +GitHub: [soumyaprasadrana](https://github.com/soumyaprasadrana) |
| 114 | + |
| 115 | +## Support |
| 116 | + |
| 117 | +If you encounter any issues or need help, please visit the [issues page](https://github.com/soumyaprasadrana/vscode-java-debugx/issues) and open a new issue or check for existing discussions. |
| 118 | + |
0 commit comments