问题描述
我用 LibGDX 库开发了一个游戏。 我在项目中使用套接字编程库作为模块。
我计划我的 LibGDX 游戏的每个进程都将成为我服务器的客户端。 我构造了它。
但我不能一次运行多个游戏来测试多人游戏功能。 当我第一次运行游戏时,一切正常,但第二次我点击运行任何东西运行直到第一个实例关闭。
我认为这是因为 Gradle。
我试图从 Gradle 设置中更改“使用 IntelliJ Idea 构建和运行”,但这次我有一个例外。它无法读取我的资产文件。
我该如何解决这个问题?
解决方法
同样的问题。桌面应用程序启动,但 gradle 构建永远不会结束,所有后续构建都必须等到我退出应用程序或停止 gradle 构建过程。
在应用程序运行配置中设置“允许多个实例”选项没有帮助。
使用“desktop:run”进行 gradle 配置具有相同的效果,而“允许并行运行”没有帮助。
这是在 Android Studio 更新到版本“Arctic Fox 2020.3.1”之后开始的
在几个终端窗口中使用“./gradlew desktop:run”从命令行开始工作,但很费力。
创建 JAR 应用程序运行配置。使用 Gradle 任务“desktop:dist”在“启动前”部分构建 jar 并指向“JAR 路径”中的 jar。
提示:
-
您可以放心地忽略图像中的所有“xmas”字符串:)
-
“XstartOnFirstThread”仅在 Mac OS 上是必需的。
-
在最近的一些“intellij/android studio”版本中,有一个会破坏“desktop:dist”的错误,解决方案是在 desktop/build.gradle 中包含“duplicatesStrategy = DuplicatesStrategy.INCLUDE”:
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
}
在运行/调试配置中启用允许多个实例选项:
,我已经用 Gradle 命令解决了这个问题。
./gradlew desktop:run