将SceneForm / ARCore添加到Gradle

时间:2018-07-30 13:18:05

标签: java android react-native gradle arcore

我试图在运行ARCore的情况下建立一个非常基本的Sceneform应用程序。我想将此包含在使用react-native init PROJECT设置的项目中。 遵循Google的这个简单guide,我将其添加到gradle中:

build.gradle列出了Sceneform插件依赖项:

buildscript {
  …
  dependencies {
    …
    classpath 'com.google.ar.sceneform:plugin:1.3.0'
  }
}

应用build.gradle包含两个Sceneform依赖项,应用了插件,并包含了一个规则,用于将sampledata资产转换为与您的应用打包在一起的资源,并且Sceneform可以在运行时加载:

…
dependencies {
  …
  implementation 'com.google.ar.sceneform:core:1.3.0'
  implementation 'com.google.ar.sceneform.ux:sceneform-ux:1.3.0'
}

apply plugin: 'com.google.ar.sceneform.plugin'

我的根build.gradle现在看起来如下

dependencies {
    classpath 'com.android.tools.build:gradle:3.1.3'
    classpath 'com.google.ar.sceneform:plugin:1.3.0'

我的应用build.gradle看起来像这样。

dependencies {
    compile fileTree(dir: "libs", include: ["*.jar"])
    compile "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"
    compile "com.facebook.react:react-native:+"  // From node_modules
    implementation 'com.google.ar.sceneform:core:1.3.0'
    implementation 'com.google.ar.sceneform.ux:sceneform-ux:1.3.0'

}

当我尝试编译时,我得到:

  

com.android.build.api.transform.TransformException:com.android.builder.dexing.DexArchiveBuilderException:com.android.builder.dexing.DexArchiveBuilderException:无法处理/Users/.../.gradle/caches/ transforms-1 / files-1.1 / sceneform-ux-1.3.0.aar / 32c1e2ae4c703fa551b4355de5a8e899 / jars / classes.jar

我试图清理项目并添加这些行

defaultConfig {
    multiDexEnabled true
}

,结果相同。

1 个答案:

答案 0 :(得分:0)

好吧,显然Java 8语言功能和新旧Android SDK版本都会出现问题。较早的Android SDK版本依赖Java 7,而较新的版本则使用Java8。

按照步骤here正确设置您的应用。