如何使用 Gradle 将 jar 文件添加到 libgdx 项目

Posted

技术标签:

【中文标题】如何使用 Gradle 将 jar 文件添加到 libgdx 项目【英文标题】:How can I add jar files to a libgdx project with Gradle 【发布时间】:2018-11-11 02:59:48 【问题描述】:

我正在使用 libgdx,我想构建一些帮助类以在我未来的 libgdx 项目中使用。

我创建了一个新的 java 项目并添加了一个名为 Renderer 的类,并使用了一个名为 clear 的方法来清除屏幕,为了访问所有 libgdx 类,我将核心项目中的 jars 添加到新项目下的“libs”文件夹中项目并将其添加到构建路径中。

import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.graphics.GL20;

public class Renderer 

    public void clear(int r, int g, int b) 
        Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
        Gdx.gl.glClearColor(r/255f, g/255f, b/255f, 1f);
    


我想将此实用程序项目导出为 jar 文件并使用 Gradle 将其添加到 libgdx 项目中。

为了实现这一点,我阅读了this 页面。

compile fileTree(dir:"../libs", include: "*.jar")添加到我的核心和android项目并刷新Gradle项目后,桌面项目工作正常并且可以访问Renderer类,但是android项目不会编译并出现此错误消息

[2018-05-31 19:14:35 - TheCosmos-android] Dx unsupported class file version 
52.0
...while parsing com/arcxesgames/crest/graphics/renderer/Renderer.class
[2018-05-31 19:14:35 - TheCosmos-android] Dx 1 error; aborting
[2018-05-31 19:14:35 - TheCosmos-android] Conversion to Dalvik format failed 
with error 1

我相信这是来自 android 两次计算 jar 文件,有没有办法解决这个问题?

【问题讨论】:

【参考方案1】:

在问了这个问题 2 小时后,我发现它让我很生气,因为它是如此简单。

所以要使用 jar 文件,您只需将 compile fileTree(dir:"../libs", include: "*.jar") 添加到您的项目根 build.gradle 项目中,并且“dir”来自根文件夹,因此如果您将名为“libs”的文件夹添加到您的核心文件夹中并将 jars 添加到您需要为核心项​​目执行的 compile fileTree(dir:"libs", include: "*.jar") 和为 android 项目执行的 compile fileTree(dir:"../core/libs", include: "*.jar") 中。

我的特殊问题与我的 libgdx 项目无关,而与我的库项目有关。我在 libgdx 项目中使用带有 lib 的 JDK8 和 JDK6,因为到目前为止,android 不支持 JDK8,一旦我更改了项目的 JDK 版本,所有的编译和工作都按预期在我的设备上运行。

【讨论】:

以上是关于如何使用 Gradle 将 jar 文件添加到 libgdx 项目的主要内容,如果未能解决你的问题,请参考以下文章

如何将 git 存储库中的 jar 文件添加为 gradle 中的依赖项?

如何在 android studio 中将 .aar 文件添加到 gradle.kts?

如何使用gradle构建源jar

Gradle - 将单个文件添加到 JAR

使用 Gradle 将 .ebextensions 添加到 Spring Boot Jar 的干净方式

如何添加jcenter仓库 gradle依赖