LibGDX 的 TexturePacker 与 gradle
LibGDX's TexturePacker with gradle
我正在尝试创建一个 gradle 任务,它根据说明 here 运行 TexturePacker。 (请注意,我使用的是 Android Studio 及其目录结构,而不是 Eclipse。)我首先将以下内容添加到 Android Studio 项目的 build.gradle
:
import com.badlogic.gdx.tools.texturepacker.TexturePacker
task texturePacker << {
if (project.ext.has('texturePacker')) {
logger.info "Calling TexturePacker: "+texturePacker
TexturePacker.process(texturePacker[0], texturePacker[1], texturePacker[2])
}
}
这给出了错误
unable to resolve class com.badlogic.gdx.tools.texturepacker.TexturePacker
将 texturePacker
任务移动到桌面项目中的 build.gradle
会产生相同的错误。根据http://www.reddit.com/r/libgdx/comments/2fx3vf/could_not_find_or_load_main_class_texturepacker2/,我还需要将compile "com.badlogicgames.gdx:gdx-tools:$gdxVersion"
添加到桌面项目依赖项下的根目录build.gradle
。当我这样做时,我仍然得到同样的错误。
所以我有几个问题:
texturePacker
任务的正确位置在哪里?我把这个放在哪个build.gradle
?
如何解决依赖问题和 unable to resolve class...
错误?
运行这个和gradle如何指定输入输出目录和图集文件? (假设前两题都解决了。)
我通过将 gdx-tools 添加到我的构建脚本依赖项来让它工作:
buildscript{
dependencies {
...
classpath 'com.badlogicgames.gdx:gdx-tools:1.5.4'
}
}
通过这样做,我的桌面 build.gradle 能够导入纹理打包器 class:
import com.badlogic.gdx.tools.texturepacker.TexturePacker
task texturePacker << {
if (project.ext.has('texturePacker')) {
logger.info "Calling TexturePacker: "+ texturePacker
TexturePacker.process(texturePacker[0], texturePacker[1], texturePacker[2])
}
}
请注意,您的桌面项目的 ext 需要定义 texturePacker:
project.ext {
mainClassName = "your.game.package.DesktopLauncher"
assetsDir = new File("../android/assets");
texturePacker = ["../images/sprites", "../android/assets", "sprites"]
}
我正在尝试创建一个 gradle 任务,它根据说明 here 运行 TexturePacker。 (请注意,我使用的是 Android Studio 及其目录结构,而不是 Eclipse。)我首先将以下内容添加到 Android Studio 项目的 build.gradle
:
import com.badlogic.gdx.tools.texturepacker.TexturePacker
task texturePacker << {
if (project.ext.has('texturePacker')) {
logger.info "Calling TexturePacker: "+texturePacker
TexturePacker.process(texturePacker[0], texturePacker[1], texturePacker[2])
}
}
这给出了错误
unable to resolve class com.badlogic.gdx.tools.texturepacker.TexturePacker
将 texturePacker
任务移动到桌面项目中的 build.gradle
会产生相同的错误。根据http://www.reddit.com/r/libgdx/comments/2fx3vf/could_not_find_or_load_main_class_texturepacker2/,我还需要将compile "com.badlogicgames.gdx:gdx-tools:$gdxVersion"
添加到桌面项目依赖项下的根目录build.gradle
。当我这样做时,我仍然得到同样的错误。
所以我有几个问题:
texturePacker
任务的正确位置在哪里?我把这个放在哪个build.gradle
?如何解决依赖问题和
unable to resolve class...
错误?运行这个和gradle如何指定输入输出目录和图集文件? (假设前两题都解决了。)
我通过将 gdx-tools 添加到我的构建脚本依赖项来让它工作:
buildscript{
dependencies {
...
classpath 'com.badlogicgames.gdx:gdx-tools:1.5.4'
}
}
通过这样做,我的桌面 build.gradle 能够导入纹理打包器 class:
import com.badlogic.gdx.tools.texturepacker.TexturePacker
task texturePacker << {
if (project.ext.has('texturePacker')) {
logger.info "Calling TexturePacker: "+ texturePacker
TexturePacker.process(texturePacker[0], texturePacker[1], texturePacker[2])
}
}
请注意,您的桌面项目的 ext 需要定义 texturePacker:
project.ext {
mainClassName = "your.game.package.DesktopLauncher"
assetsDir = new File("../android/assets");
texturePacker = ["../images/sprites", "../android/assets", "sprites"]
}