我正在使用libgdx支付Android和iOS,直到最近才能在桌面模式下测试我的应用程序。
自升级到IntelliJ 2016.1以来,我现在只在尝试运行桌面应用程序时收到以下错误; iOS和Android都继续编译并成功运行。
错误:
Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: java.lang.NoClassDefFoundError: com/badlogic/gdx/pay/PurchaseObserver
桌面和核心模块的build.gradle文件如下所示;
allprojects {
apply plugin: "eclipse"
apply plugin: "idea"
version = '1.0'
ext {
appName = '####'
gdxVersion = '1.9.2'
roboVMVersion = '1.8.0'
box2DLightsVersion = '1.4'
ashleyVersion = '1.4.0'
aiVersion = '1.5.0'
gdxpayVersion = '0.6.0'
}
repositories {
mavenCentral()
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
maven { url "https://oss.sonatype.org/content/repositories/releases/" }
}
}
project(":core") {
apply plugin: "java"
dependencies {
compile "com.badlogicgames.gdx:gdx:$gdxVersion"
compile "de.tomgrill.gdxtwitter:gdx-twitter-core:0.1.0-SNAPSHOT"
compile "com.badlogicgames.gdxpay:gdx-pay:$gdxpayVersion"
compile "com.badlogicgames.gdxpay:gdx-pay-client:$gdxpayVersion"
}
}
project(":desktop") {
apply plugin: "java"
dependencies {
compile project(":core")
compile "de.tomgrill.gdxtwitter:gdx-twitter-desktop:0.1.0-SNAPSHOT"
compile "com.badlogicgames.gdx:gdx-backend-lwjgl:$gdxVersion"
compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop"
}
}
此外,在IntelliJ中,它只能报告导入PurchaseObserver
时出错,只有在我尝试运行应用程序时才会出现错误。
任何帮助都将不胜感激。
答案 0 :(得分:0)
这是IntelliJ本身的一个已知错误,在此汇总http://www.badlogicgames.com/forum/viewtopic.php?f=11&t=21148&hilit=intellij
可以在此处找到IntelliJ问题 https://youtrack.jetbrains.com/issue/IDEA-147788
只有在Android运行配置时才会出现此错误。
在修复之前,解决方法是通过命令行使用gradle,如下所示;
gradle ProjectName:desktop run
这也可以作为IntelliJ中的运行配置实现。