-
Notifications
You must be signed in to change notification settings - Fork 406
Description
I have the following dropwizard app: https://github.com/open-metadata/OpenMetadata, which I am trying to run in debug mode in VS Code. I have tried a few setup of my launch.json file including a recommendation from this SO post How to debug a java dropwizard app using Visual Studio Code.
My launch.json file is configured as show below.
{
"type": "java",
"name": "Debug (Launch)-OpenMetadataApplication<openmetadata-service>",
"request": "launch",
"cwd": "${workspaceFolder}",
"console": "internalConsole",
"stopOnEntry": false,
"mainClass": "org.openmetadata.service.OpenMetadataApplication",
"classPaths": [
"path/to/OpenMetadata/openmetadata-dist",
],
"projectName": "openmetadata-service",
"args": ""
},
{
"type": "java",
"name": "Debug (Attach)",
"request": "attach",
"hostName": "localhost",
"port": 8000
},
I have also tried a simpler config specifying just the classpath and the main class and trying to launch the app directly from the debugger (vs launching it first with the mvn debugger and then attaching to it through VS Code debugger). This yields the same error.
{
"type": "java",
"name": "Debug (Launch)-OpenMetadataApplication<openmetadata-service>",
"request": "launch",
"cwd": "${workspaceFolder}",
"mainClass": "org.openmetadata.service.OpenMetadataApplication",
"classPaths": [
"/path/to/OpenMetadata/openmetadata-dist",
],
"projectName": "openmetadata-service",
"args": ""
},
When running the debugger I get a OpenMetadataApplication class not found error. As comparison I am able to successfully run the app in debug mode using IntelliJ -- see screenshot below for IntelliJ config.
I can also run the simple application from the Getting Started dropwizard documentation.
Questions
- Is it possible to run this kind of multi-module application in VS Code
- If yes, what pieces am I missing from my launcher config
Thank you for your help, this would be awesome and allow me to only use VS Code 😊
Environment
- Operating System: Mac OS Sonoma
- JDK version: 17 (the screenshot says 11 but the project recently moved to 17)
- Visual Studio Code version: 1.86.1
- Java extension version: Extension Pack for Java v0.25.15
- Java Debugger extension version: v0.56.1
Steps To Reproduce
- Clone the repository at https://github.com/open-metadata/OpenMetadata
- Setup the launcher.json to start the dropwizard application in debug mode
Current Result
Application fails to start and VS Code throws a OpenMetadataApplication class not found error
Expected Result
Application will start correctly in debug mode allowing me to set brekpoints in the application code.
Additional Informations
Before starting the application you will need to:
- compile the project
mvn clean install -DskipTestsfrom the root folder - generate Python class from json-schema
make generatefrom the root folder - start the application in docker
cd docker/development/ && docker compose up -d --build - stop the server in the compose service and start the server in debug mode from VSCode
