Java 我的应用程序在eclipse中运行良好,而不是在jar中

Java 我的应用程序在eclipse中运行良好,而不是在jar中,java,eclipse,jframe,executable-jar,Java,Eclipse,Jframe,Executable Jar,我有一个在Eclipse中开发的游戏,当我从那里运行它时,它工作得非常好。它给你一个JFrame框架,你可以选择难度,如果你完成了,你可以在一个新的框架中玩游戏。它工作得很好,直到我创建了安装框架 因此,在Eclipse中,我运行应用程序,设置设置,单击按钮,第一帧不可见,这将打开下一帧。当执行导出的runnable jar时,它不会停止,但是第二帧游戏帧是不可见的 这是主要的 public static void main(String[] args) { int ammuData =

我有一个在Eclipse中开发的游戏,当我从那里运行它时,它工作得非常好。它给你一个JFrame框架,你可以选择难度,如果你完成了,你可以在一个新的框架中玩游戏。它工作得很好,直到我创建了安装框架

因此,在Eclipse中,我运行应用程序,设置设置,单击按钮,第一帧不可见,这将打开下一帧。当执行导出的runnable jar时,它不会停止,但是第二帧游戏帧是不可见的

这是主要的

public static void main(String[] args) {
    int ammuData = 0;
    int enemyData = 0;
    Config config = new Config();

    while (config.frame.isVisible()) {
        ammuData = config.getAmmu();
        enemyData = config.getEnemies();
    }

    Game game = new Game(ammuData, enemyData);
    game.frame.setResizable(false);
    game.frame.setTitle(Game.title);
    game.frame.add(game);
    game.frame.pack();
    game.frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    game.frame.setLocationRelativeTo(null);
    game.frame.setVisible(true);
    game.start();
}

您是否尝试过调试在Eclipse之外运行的应用程序?你能发布游戏和配置的代码吗?我想当条件不停止时,你会进入无限循环,所以它不会到达你的游戏。setVisibletrue;如果在Windows上,您可以尝试使用Process Explorer,以精确查看Eclipse启动应用程序时使用的javaw命令行参数,然后将其与手动启动应用程序时使用的命令行参数进行比较。您不应该像这样使用轮询循环。它将在一个内核上创建100%的CPU负载,而不做任何有用的事情。使用模式对话框,其setVisibletrue方法将在对话框关闭时返回,或者使用WindowListener在框架关闭时获得通知。