Дебаг приложения на этапе компиляции IntelliJ IDEA.md
This commit is contained in:
parent
0cfd8fc8b5
commit
ccf5bd6bc4
@ -0,0 +1,49 @@
|
||||
---
|
||||
aliases:
|
||||
tags:
|
||||
- maturity/🌱
|
||||
date:
|
||||
- - 2024-04-07
|
||||
zero-link:
|
||||
- "[[../../meta/zero/00 Снипеты для Java|00 Снипеты для Java]]"
|
||||
parents:
|
||||
linked:
|
||||
link: https://struchkov.dev/blog/ru/java-debugging-annotation-processor/
|
||||
---
|
||||
Я столкнулся с необходимостью дебага annotation processor, когда писал библиотеку со своими аннотациями и обработчиками к ним. Проблема заключается в том, что обработка аннотаций происходит на этапе компиляции.
|
||||
## 1. Создание Remote JVM Debug Configuration
|
||||
Создаем новую конфигурацию. Вам нужно найти: “Remote JVM Debug”.
|
||||
|
||||
![](../../meta/files/images/Pasted%20image%2020240407184559.png)
|
||||
|
||||
Выберите режим “Attach to remote JVM” и любой доступный порт, например 8000.
|
||||
|
||||
![](../../meta/files/images/Pasted%20image%2020240407184611.png)
|
||||
|
||||
## 2. Убедитесь, что процесс сборки использует ваш порт
|
||||
Нажмите `Ctrl+Shift+A` и найдите пункт “Edit Custom VM Options…”
|
||||
|
||||
Добавьте новую строку `-Dcompiler.process.debug.port=8000` и ==перезапустите IDEA.==
|
||||
|
||||
![](../../meta/files/images/Pasted%20image%2020240407184626.png)
|
||||
## 3. Включите “Debug build process”
|
||||
Нажмите `Ctrl+Shift+A` и пункт “Debug build process”.
|
||||
|
||||
> [!WARNING]
|
||||
> Вам нужно будет повторять этот шаг каждый раз при перезапуске IDEA.
|
||||
## 4. Дебажим
|
||||
Сначала установите точку останова в коде обработчика аннотаций.
|
||||
|
||||
![](Pasted%20image%2020240407184705.png)
|
||||
|
||||
Для запуска вашего обработчика аннотаций пересоберите проект: `Build -> Rebuild Project`. ==При выборе пункта Build Project обработчик аннотации может не запуститься.==
|
||||
|
||||
Процесс сборки приостановится, и вы сможете подключить отладчик:
|
||||
|
||||
![](../../meta/files/images/Pasted%20image%2020240407184716.png)
|
||||
|
||||
Теперь запустите добавленную вами конфигурацию в режиме Debug (Shift+F9). Javac возобновит компиляцию. IDEA теперь должна остановиться на установленной вами точке останова.
|
||||
|
||||
![](../../meta/files/images/Pasted%20image%2020240407184727.png)
|
||||
|
||||
На этом все, теперь вы можете отлаживать ваши обработчики аннотаций.
|
@ -1 +0,0 @@
|
||||
вторник, 3 сентября 2024 г. 14:56:39 (MSK)
|
BIN
meta/files/images/Pasted image 20240407184559.png
Normal file
BIN
meta/files/images/Pasted image 20240407184559.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 94 KiB |
BIN
meta/files/images/Pasted image 20240407184611.png
Normal file
BIN
meta/files/images/Pasted image 20240407184611.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 265 KiB |
BIN
meta/files/images/Pasted image 20240407184626.png
Normal file
BIN
meta/files/images/Pasted image 20240407184626.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 94 KiB |
BIN
meta/files/images/Pasted image 20240407184716.png
Normal file
BIN
meta/files/images/Pasted image 20240407184716.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 70 KiB |
BIN
meta/files/images/Pasted image 20240407184727.png
Normal file
BIN
meta/files/images/Pasted image 20240407184727.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 284 KiB |
@ -11,4 +11,5 @@ aliases:
|
||||
- [Создание linux сервиса для Java приложения](../../dev/snippet/Создание%20linux%20сервиса%20для%20Java%20приложения.md)
|
||||
- [Игнорирование ошибок сертификата OkHttp3](../../dev/snippet/Игнорирование%20ошибок%20сертификата%20OkHttp3.md)
|
||||
- [Mock конфигурация Oauth2 для SpringBoot](../../dev/snippet/Mock%20конфигурация%20Oauth2%20для%20SpringBoot.md)
|
||||
- [Несколько подключений к базе H2](../../dev/snippet/Несколько%20подключений%20к%20базе%20H2.md)
|
||||
- [Несколько подключений к базе H2](../../dev/snippet/Несколько%20подключений%20к%20базе%20H2.md)
|
||||
- [Дебаг приложения на этапе компиляции IntelliJ IDEA](../../dev/snippet/Дебаг%20приложения%20на%20этапе%20компиляции%20IntelliJ%20IDEA.md)
|
Loading…
Reference in New Issue
Block a user