我正在按照 Android Studio Basics 中的说明试用 Oculus Mobile SDK V1.0.4。 .
我为 VrCubeWorld_Framework
导入了 build.gradle
文件,当切换到 Project View 时,所有依赖项都以粗体显示,包括 VrAppFramework
.
不过,当我尝试构建它时,我并没有走得太远。我得到的第一个错误是:
error: package com.oculus.vrappframework does not exist
在 vrcubeworld\MainActivity.java
中。
似乎很明显发生了什么,它不知道框架中的 Activity ,但我如何建立这种联系?我是否需要将其添加为外部库/项目之类的?因为它已经是粗体了,所以我认为应该已经处理好了。
作为引用,这里是 build.gradle
:
apply plugin: 'com.android.application'
apply from: "${rootProject.projectDir}/VrApp.gradle"
dependencies {
compile project(':VrAppFramework:Projects:AndroidPrebuilt')
compile project(':VrAppSupport:VrGUI:Projects:AndroidPrebuilt')
compile project(':VrAppSupport:VrLocale:Projects:AndroidPrebuilt')
compile project(':VrAppSupport:VrSound:Projects:AndroidPrebuilt')
}
android {
project.archivesBaseName = "vrcubeworldfw"
defaultConfig {
applicationId "com.oculus.vrcubeworldfw"
}
compileSdkVersion 19
buildToolsVersion '23.0.1'
buildTypes {
debug {
jniDebuggable true
}
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['../../java']
jniLibs.srcDir 'libs'
res.srcDirs = ['../../res']
assets.srcDirs = ['../../assets']
}
}
}
最佳答案
这总结了错误的确切原因 Oculus Forums .然而,经过一些挖掘后,它从任务名称中获取构建类型。
不要打电话:
gradle build
调用:
gradle assembleDebug
为 ANDROID STUDIO 编辑:
我正在处理一个非普通的 oculus vr 项目,所以我的一些更改可能不适用。但是,我发现 android studio 的问题在于它会将任务的完整路径传递给 gradle 以进行构建。在 build.gradle 文件中,它检查整个任务名称是否为“assembleDebug”
build.gradle 中的相关源代码:
if ( project.file("build.gradle").exists() ) {
project.gradle.startParameter.taskNames.each { taskName ->
if ( taskName == "assembleDebug" || taskName == "assembleRelease" || taskName == "clean" ) {
if ( project.hasProperty( "buildType" ) ) {
//throw new GradleException( "cannot configure multiple build tasks" )
}
project.ext.buildType = taskName - "assemble"
}
}
}
更改它以检查任务是否包含发布或调试对我有很大帮助:
if ( project.file("build.gradle").exists() ) {
project.gradle.startParameter.taskNames.each { taskName ->
if (taskName.contains( "Debug" ) ) {
project.ext.buildType = "Debug";
} else if( taskName.contains( "Release" ) ) {
project.ext.buildType = "Release";
}
}
}
关于java - 错误: package com. oculus.vrappframework不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41405712/