首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在OpenJFX中调试Maven IntelliJ应用程序

如何在OpenJFX中调试Maven IntelliJ应用程序
EN

Stack Overflow用户
提问于 2020-04-28 07:05:10
回答 1查看 645关注 0票数 1

由于JavaFX已成为OpenJFX,需要将其作为依赖项添加到Maven项目中,因此调试OpenJFX应用程序变得非常复杂。在这个问题中,已经回答了如何为NetBeans解决这个问题。但IntelliJ的工作方式略有不同。Ppom.xml是根据这个例子设置的。

如何在OpenJFX (JavaFX)应用程序中以IntelliJ的调试模式将其配置为Maven项目?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-28 07:05:10

如果要复制pom.xml中为javafx plugin提供的VM选项,您可以使用'mvn : run @debug‘运行应用程序,然后通过转到菜单'Run -附加到process.’手动将其附加到IntelliJ调试器上.以及选择您的应用程序。

但是,如果您希望通过一次单击启动调试器和应用程序,那么IntelliJ是一个麻烦的问题。您可以创建一个远程调试配置,它首先依次启动应用程序和调试器。或具有复合结构,两者并行。问题是要让它们同步。

我找到了以下解决方案。将应用程序作为调试客户端运行,IntelliJ调试器作为服务器运行。pom.xml文件中javafx plugin的VM选项应该有'server=n':

代码语言:javascript
复制
        <plugin>
            <groupId>org.openjfx</groupId>
            <artifactId>javafx-maven-plugin</artifactId>
            <version>0.0.4</version>
            <executions>
                <execution>
                    <!-- Default configuration for running -->
                    <id>default-cli</id>
                    <configuration>
                        <mainClass>org.waninge.test.JFXTest</mainClass>
                    </configuration>
                </execution>
                <execution>
                    <!-- Configuration for debugging -->
                    <id>debug</id>
                    <configuration>
                        <options>
                            <option>-agentlib:jdwp=transport=dt_socket,server=n,address=localhost:8000,suspend=y</option>
                        </options>
                        <mainClass>org.waninge.test.JFXTest</mainClass>
                    </configuration>
                </execution>
            </executions>
        </plugin>

在IntelliJ中使用‘命令行’中的'javafx: Run @debug‘创建一个Maven运行配置。使用以下设置创建远程运行配置:

  • 调试器模式:“侦听远程JVM”;
  • 运输:“插座”;
  • 主持人:就像在pom里一样
  • 港口:就像在港口一样

现在,远程运行配置将启动一个等待客户端的调试服务器。Maven运行配置将连接到调试服务器,或者如果调试服务器不在联机,则失败。

现在,要通过一次单击就可以启动所有操作,您可以创建一个复合运行配置,并将Maven和远程运行配置添加到其中。启动此配置将并行启动这两个配置,您可以调试应用程序。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61474493

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档