Если вы видите документацию из javafx-maven-plugin
, вы можете добавить некоторые аргументы VM к цели run
для отладки вашего проекта в NetBeans.
Однако, чтобы обычная цель run
была готова просто запустить проект и не отлаживать его, не комментируя добавленные опции, мы можем добавить второе выполнение к плагину.
ИзменитьВаш плагин выглядит так:
<plugin>
<groupId>org.openjfx</groupId>
<artifactId>javafx-maven-plugin</artifactId>
<version>0.0.2</version>
<executions>
<execution>
<!-- Default configuration for running -->
<id>default-cli</id>
<configuration>
<mainClass>com.mycompany.simonsaysgfx.App</mainClass>
</configuration>
</execution>
<execution>
<!-- Configuration for debugging -->
<id>debug</id>
<configuration>
<options>
<option>-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=*:8000</option>
</options>
<mainClass>com.mycompany.simonsaysgfx.App</mainClass>
</configuration>
</execution>
</executions>
</plugin>
Теперь вы можете запустить из командной строки:
mvn clean javafx:run
, чтобы запустить как обычно ваше приложение, и:
mvn clean javafx:run@debug
длязапустить режим отладки.Тогда вы увидите что-то вроде:
[INFO] --- javafx-maven-plugin:0.0.2:run (debug) @ Project ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 3 source files to /path/to/project/target/classes
Listening for transport dt_socket at address: 8000
На этом этапе вам нужно установить точки останова и подключить отладчик от NetBeans -> Debug -> Attach Debugger
к порту 8000:
Нажмите кнопку ОК, и вы сможете отлаживать свои проекты.
Обратите внимание, что вы также можете определить собственные действия NetBeans для использования кнопок «Выполнить» и «Отладка».Добавьте файл nbactions.xml
в корневой каталог вашего проекта, выполнив следующие два действия:
<?xml version="1.0" encoding="UTF-8"?>
<actions>
<action>
<actionName>run</actionName>
<goals>
<goal>clean</goal>
<goal>javafx:run</goal>
</goals>
</action>
<action>
<actionName>jlink</actionName>
<goals>
<goal>clean</goal>
<goal>javafx:jlink</goal>
</goals>
</action>
<action>
<actionName>debug</actionName>
<goals>
<goal>clean</goal>
<goal>javafx:run@debug</goal>
</goals>
</action>
</actions>
Теперь вы можете использовать кнопки запуска и отладки NetBeans.