【问题标题】:Gradle build failed with new import rulesGradle 构建因新的导入规则而失败
【发布时间】:2020-02-29 19:13:56
【问题描述】:

我将 android studio 更新到 3.6 版后遇到错误。当我尝试导入Scenceform资产时,它在下图中显示警告,无论我点击什么,它都会返回

java.lang.RuntimeException: java.lang.NoSuchMethodError: com.android.tools.idea.templates.recipe.RecipeExecutor.append(Ljava/io/File;Ljava/io/File;)

我该如何解决这个问题?

【问题讨论】:

  • 你试过flutter clean
  • 我正在使用 java 编写本机应用程序。我不使用颤振

标签: android-studio


【解决方案1】:

-- 2020 年 6 月更新--

Sceneform 1.15 已被开源 Sceneform 1.16 取代。这似乎也改变了模型构建方法,不再使用 SceneForm 插件和 .sfa/.sfb 工作流程,而是直接支持 .gltf 格式模型。

GitHub 页面上提供了更多信息,尽管存储库现已存档,因此目前(2020 年 6 月)很难理解 Sceneform 的未来方向:

(https://github.com/google-ar/sceneform-android-sdk)

-- 如果您使用的是 Sceneform 1.15,解决原始问题的方法--

要解决此问题,您使用的是 Sceneform 插件 - 请参见下文:

在撰写本文时,这似乎是 Android Studio 3.6 的问题 - 请参阅此处的问题:

一种解决方法似乎是恢复到 Android Studio 3.5。

手动添加资产似乎也可以工作 - 以 ARCore (https://developers.google.com/ar/develop/java/sceneform) 在线文档中的示例为例:

按照以下步骤导入新的 3D 资产:

  1. 验证您的项目的 app 文件夹是否包含 sampledata 文件夹。

    要创建文件夹,请右键单击项目窗口中的应用程序文件夹,然后选择新建 > 示例数据目录。

    sampledata 文件夹是您的 Android Studio 项目的一部分,但其内容不会包含在您的 APK 中。

  2. 复制您的 3D 模型源资产文件(*.obj、*.fbx 或 .gltf)及其所有依赖项(.mtl、*.bin、*.png、*. jpg 等)到 sampledata 文件夹中。

    不要将这些源文件复制到项目的 assets 或 res 文件夹中,因为这会导致它们不必要地包含在您的 APK 中。

  1. 现在不要右键单击并使用导入,如上面链接中的说明,手动将以下行添加到 build.gradle(app) 文件的底部:
apply plugin: 'com.google.ar.sceneform.plugin'

sceneform.asset('sampledata/andy.obj', // 'Source Asset Path' specified during import.
        'default',                    // 'Material Path' specified during import.
        'sampledata/andy.sfa', // '.sfa Output Path' specified during import.
        'src/main/res/raw/andy')      // '.sfb Output Path' specified during import.
  1. 重建您的项目并正确导入可渲染对象 - 检查 andy.sfb 是否已出现在“res/raw”文件夹中以确保。

【讨论】:

  • @Nourman - 我刚刚在一个新项目上再次检查它,它对我有用。也许检查路径是否与您项目中的路径匹配,即“sampledata/andy.obj”,并且您在该目录中有 andy.obj、andy.mtl 和 andy.png 文件
  • 对我不起作用。它只是说“无法导入'sampledata/models/chroma_key_video.obj'”
【解决方案2】:

@harsha 确保 .obj 文件引用了正确的材料。

mtllib chroma_key_video.mtl
g default
v -0.000000 2.244259 0.431967
v ...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-10-05
    • 1970-01-01
    • 2015-06-15
    • 2022-07-07
    • 2014-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多