Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.lang.NoClassDefFoundError(libgdx)_Java_Android_Frameworks_Libgdx - Fatal编程技术网

java.lang.NoClassDefFoundError(libgdx)

java.lang.NoClassDefFoundError(libgdx),java,android,frameworks,libgdx,Java,Android,Frameworks,Libgdx,一直在尝试使用Libgdx框架,并且遇到了一些令人沮丧的问题。。我正在学习教程,无法运行我的项目。我做错了什么 package com.mygdx.game.android; import com.badlogic.gdx.ApplicationListener; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.graphics.Texture; import com.badlogic.gdx.graphics.g2d.SpriteBa

一直在尝试使用Libgdx框架,并且遇到了一些令人沮丧的问题。。我正在学习教程,无法运行我的项目。我做错了什么

package com.mygdx.game.android;

import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;

public class AndroidLauncher implements ApplicationListener {

    SpriteBatch batch;
    Texture mario;


    @Override
    public void create() {
        batch = new SpriteBatch();

        mario = new Texture(Gdx.files.internal("mario.png"));
    }

    @Override
    public void resize(int width, int height) {
        // TODO Auto-generated method stub

    }

    @Override
    public void render() {
        Gdx.gl.glClearColor(1,1,1,1);


        batch.begin();
        batch.draw(mario, 50, 50);
        batch.end();



    }

    @Override
    public void pause() {
        // TODO Auto-generated method stub

    }

    @Override
    public void resume() {
        // TODO Auto-generated method stub

    }

    @Override
    public void dispose() {
        // TODO Auto-generated method stub

    }

}
以下是我运行项目时控制台显示的内容:

Exception in thread "main" java.lang.NoClassDefFoundError: com/badlogic/gdx/jnigen/NativeCodeGenerator
    at com.badlogic.gdx.utils.GdxBuild.main(GdxBuild.java:34)
Caused by: java.lang.ClassNotFoundException: com.badlogic.gdx.jnigen.NativeCodeGenerator
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 1 more

右键单击项目-属性-构建选项-排序并导出,然后检查所有gdx库。可能就是这样,当它在运行时找不到类时就会出现错误。

我也遇到了同样的问题,但意识到我是在运行GdxBuild。确保右键单击DesktopLauncher.java>运行方式>java应用程序。

右键单击->运行方式->运行配置->单击左侧菜单中的桌面启动程序,然后单击运行,这将解决问题。

项目结构->模块->选择所需模块(桌面、android等)->依赖项->添加库


别忘了将范围从“提供”更改为“编译”。

在我的例子中,这是我的第一个libGDX项目,我在KUBUNTU上使用Android Studio 3.0.1版运行它,当我使用gdx-setup.jar(安装应用程序)导入新创建的项目时Android Studio收到一条弹出消息,要求我更新Gradle,我这样做了,这破坏了项目

解决方案:
创建一个新的libGDX项目并导入它,而不更新Gradle(单击“不要再次提醒我这个项目””),它应该可以工作。

我也遇到了同样的问题,唯一可以重现它的方法是使用桌面配置。因此,不要使用桌面配置,而是将其作为gradle配置运行。在命令行中,这将是:

gradlew desktop:run
因为每次您想要运行项目时手动执行这项操作都很痛苦,所以创建一个新的Gradle运行配置

如果您选择运行配置中的Gradle项目作为子模块,那么您需要键入的任务是
gradlew run
,而不是
gradlew desktop:run

您必须在VM选项输入中定义内存标志(但不必具有这些值):

脚本参数可以保持为空。请注意,整个过程都算作Gradle构建,因此在启动新的过程之前,必须先终止该过程(如果它正在运行)

我可以毫无问题地出口一个罐子,所以你在生产中应该很好


TL:DR使用Gradle运行配置和
gradlew桌面:运行
,而不是使用应用程序

这么多不同的答案。我没有遵循这些原则,而是创建了一个新项目。尽可能简单;如果升级IntelliJ会破坏我的项目,我希望在2018年减少未使用的功能

我正在

java.lang.ClassNotFoundException:com.badlogic.gdx.ApplicationListener
…

原因:java.lang.ClassNotFoundException:com.badlogic.gdx.ApplicationListener
…

从2017年3月升级到2018年1月后

这次我没有在任何框中打勾:

同样,对于“高级”设置:

在没有IDEA的情况下,该项目花了10秒生成,并给出了关于如何导入的不同说明,这些说明获得了显著的成功(Eclipse中有人记得最清楚的是旧方法吗?)


当然,我还犯了一些错误,但在启动一个新项目之前,我没有克服任何错误。之后,只需将旧文件复制过来即可。还有一个提示,无论IntelliJ提供什么设置来打开Java级别设置为1.7,Gradle文件都不会被触动,因此您必须手动查找剩余的1.6引用。

不幸的是,这不是问题所在。已尝试此操作,但未解决任何问题(已检查库)。尽管如此,我只有一个gdx库(我的gdx游戏核心[Builder])可供检查。。这正常吗?错误表明它找不到类,确实遵循了一些教程,如果是,提供了一个链接,我可以查看。是的,我遵循教程设置gradle和libgdx,并在导入测试项目(我的gdx游戏android)等之后。。一切似乎都很顺利。当我达到这一点时,我开始遇到一些问题:您是否正在尝试在Android上构建和运行它?
-Xmx2G -Xms128M