不能 运行 超过一个 LibGDX 游戏

Can't run more than one LibGDX game

我用 LibGDX 库开发了一款游戏。 我在项目中使用套接字编程库作为模块。

我计划我的 LibGDX 游戏的每个进程都将成为我的服务器的客户端。 我构造了它。

但是我一次 运行 不能超过一个游戏来测试多人游戏功能。 当我第一次 运行 游戏时,一切正常,但是第二次我点击 运行 任何东西 运行 直到第一个实例关闭。

我认为这是因为 Gradle。

我试图从 Gradle 设置中更改“使用 IntelliJ Idea 构建和 运行”,但这次出现异常。它无法读取我的资产文件。

我该如何解决这个问题?

enter image description here

在Run/Debug配置中启用允许多个实例选项:

我已经用 Gradle 命令解决了。

./gradlew desktop:run

同样的问题。桌面应用程序启动但 gradle 构建永远不会结束,所有后续构建都必须等到我退出应用程序或停止 gradle 构建过程。

在应用程序 运行 配置中设置“允许多个实例”选项没有帮助。

使用“desktop:run”进行 gradle 配置具有相同的效果,而“允许并行 运行”没有帮助。

这在 Android Studio 更新到版本“Arctic Fox 2020.3.1”后开始

在多个终端中使用“./gradlew desktop:run”从命令行启动 windows 可以,但是很费力。


更新临时解决方案(直到错误修复):

创建 JAR 应用程序 运行 配置。使用 Gradle 任务“desktop:dist”在“启动前”部分构建 jar,并指向“JAR 路径”中的 jar。

提示:

  • 您可以安全地忽略图像中的所有“xmas”字符串:)

  • “XstartOnFirstThread”仅在 Mac OS.

    上是必需的
  • 在最近的一些“intellij/android studio”版本中存在一个破坏“desktop:dist”的错误,解决方案是在 [=50] 中包含“duplicatesStrategy = DuplicatesStrategy.INCLUDE” =].gradle:

     task dist(type: Jar) {
     manifest {
         attributes 'Main-Class': project.mainClassName
     }
     dependsOn configurations.runtimeClasspath
    
     duplicatesStrategy = DuplicatesStrategy.INCLUDE
    
     from {
         configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
     }
     with jar
    

    }