java - 调试 Maven 项目终止 JFrame 创建

标签 java eclipse swing maven

我有一个有 4 个依赖项的 Maven 项目。该项目首先创建一个 JFrame,对其进行初始化并显示它。

当尝试调试程序时,调试器终止于

JFrame test = new JFrame("test");

尝试创建 JFrame 时。

当我在 Eclipse 外部编译并运行 jar 时,不会发生这种情况。

如果我从 pom 中删除所有依赖项,JFrame 将被创建并正常显示。

什么可能导致 Eclipse 在创建 JFrame 时终止调试器?

我尝试过重新安装 Java、重新创建项目、在新工作区中重新创建项目,以及在测试项目中使用相同的 pom 设置,所有这些都会导致在 JFrame 创建时终止的相同行为。

编辑:这是问题代码和 pom.xml。

import javax.swing.JFrame;
import javax.swing.JLabel;

public class App {

    public static void main(String[] args) {
        try {
            JFrame test = new JFrame("test");
            test.add(new JLabel("test"));
            test.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            test.pack();

            test.setVisible(true);
        } catch (Throwable t) {
            t.printStackTrace();
        }
    }
}

这是 POM

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.so.test.example</groupId>
    <artifactId>Example-Project</artifactId>
    <version>0.0.1-SNAPSHOT</version>

    <dependencies>
        <dependency>
            <groupId>pro.beam</groupId>
            <artifactId>api</artifactId>
            <version>3.0.3-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>pro.beam</groupId>
            <artifactId>interactive</artifactId>
            <version>1.5.1-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>com.sparkjava</groupId>
            <artifactId>spark-core</artifactId>
            <version>2.5.4</version>
        </dependency>
        <dependency>
            <groupId>com.miglayout</groupId>
            <artifactId>miglayout-swing</artifactId>
            <version>5.0</version>
        </dependency>
    </dependencies>

    <repositories>
        <repository>
            <id>beam-releases</id>
            <url>https://maven.beam.pro/content/repositories/releases/</url>
        </repository>
        <repository>
            <id>beam-snapshots</id>
            <url>https://maven.beam.pro/content/repositories/snapshots/</url>
        </repository>
    </repositories>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.6.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

我已将范围缩小到删除 Beam 和 Spark 依赖项将允许创建 JFrame,但我尚未确定原因。我确保我使用的是可以找到的版本。

最佳答案

事实证明,最新的 NVIDIA 1070 显卡驱动程序的某些内容打破了这一点。我卸载了驱动程序 #378.49 并重新安装了 #376.33,现在它可以工作了。

关于java - 调试 Maven 项目终止 JFrame 创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41967362/

相关文章:

java - Spring AMQP 异常

java - Spring 3 MVC从 Controller 访问全局变量

java - Eclipse 中的 Maven 项目创建问题

java - 为什么我的 Swing 程序仍在推进?

java - 如何保持垂直滚动条始终位于jtable的末尾

java - 展开 SimpleMapApp - 图像文件丢失

java.lang.IllegalArgumentException : attempt to remove OnFrameMetricsAvailableListener that was never added

java - 来自 .NET Webservice 的压缩数组字节 Java

Eclipse .jazzlock 保存无法完成

java - 如何使用键绑定(bind)使矩形在屏幕上移动?