【问题标题】:Libgdx FreeTypeFontGenerator not working on android?Libgdx FreeTypeFontGenerator 不能在安卓上运行?
【发布时间】:2014-01-12 05:44:09
【问题描述】:

虽然您可能已经知道这一点,但我正在使用 Java/Libgdx。我也在用 Eclipse 运行 Ubuntu 12.04,如果这意味着什么的话。

我对此进行了一些研究,有些人遇到了同样的问题,但得到了不同的错误。无论如何,我尝试了他们的解决方案,但无济于事。

无论如何,我的问题是,尽管我加载的 freetypefonts 在我的桌面上运行良好
项目,每次我尝试在eclipse中将android项目编译成apk时,它都会出现
关于 dex 加载或其他东西的奇怪错误。这会是什么?我完美地遵循了this 教程。

这是我尝试编译时遇到的错误-

[2014-01-11 12:13:49 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/badlogic/gdx/graphics/g2d/freetype/FreeType$Pointer;
[2014-01-11 12:14:08 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/badlogic/gdx/graphics/g2d/freetype/FreeType$Pointer;
[2014-01-11 18:08:48 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/badlogic/gdx/graphics/g2d/freetype/FreeType$Pointer;
[2014-01-11 18:12:16 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/badlogic/gdx/graphics/g2d/freetype/FreeType$Pointer;
[2014-01-11 18:12:37 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/badlogic/gdx/graphics/g2d/freetype/FreeType$Pointer;

我应该试试 Hiero 还是其他类似的东西?

【问题讨论】:

    标签: java android fonts libgdx freetype


    【解决方案1】:

    你复制了那个特定的类。看来您要添加两次罐子。

    右键单击您的 Android 项目 -> 属性 -> Java 构建路径 -> 订购和导出选项卡,并检查您没有添加两次 jar,尝试取消选中私有库。

    【讨论】:

    • 谢谢,现在它至少正在编译,但现在当我在模拟器上运行它时,它突然强制关闭。有什么想法吗?我所做的只是取消选中我的 android 项目下的 gdx-freetype.jar,因为它已经在我的主要项目下被选中。你是这个意思吗?
    • “应用程序 MyLibgdxGame(进程 com.ashwin.timedestiny)意外停止。请重试。”带有强制关闭按钮
    • 有什么帮助吗?任何想法@Lestat
    • @AshwinKudva 信息​​不足。错误在 Logcat 中。发布它
    • 没关系,同样的错误。我真的不明白所有的罐子和东西是怎么回事,我只知道我遵循了一个不适用于android的教程。但是,当我在所有项目中取消选中 gdx-freetype.jar 时,它仍然可以在我的桌面上运行 @Lestat
    【解决方案2】:

    我已经在这个问题上苦苦挣扎了将近 2 个小时,但最终找到了确切的问题。就我而言,我在“libs”文件夹和 build.gradle 中都有 gdx-freetype.jar。 但是您可以看到,在“核心”项目中,存在从库编译 jar 以及从 com.badlogicgames.gdx 编译其他所有内容的依赖项:

    dependencies {
        compile fileTree(dir: '../libs', include: '*.jar')
        compile "com.badlogicgames.gdx:gdx:$gdxVersion"
        compile "com.badlogicgames.gdx:gdx-ai:$aiVersion"
        compile "com.badlogicgames.gdx:gdx-freetype:$gdxVersion"
    }
    

    在这种情况下编译器编译 gdx-freetype 两次,所以我们有“多个 dex 文件定义”错误。

    解决方案只是从 libs 文件夹中删除该 jar。 希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-04
      • 1970-01-01
      • 1970-01-01
      • 2023-03-30
      • 2022-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多