Tensorflow:不解决gradle [英] Tensorflow: not resolving in gradle
问题描述
今天早上打开Android Studio时,Gradle尝试同步时出现此错误:
When I opened up Android Studio this morning, I got this error when Gradle tried to sync:
Error:(103, 13) Failed to resolve: org.tensorflow:tensorflow-android:+
按照他们的 Github自述文件中的说明,他们使用动态版本(Android Studio会向我警告).就在前一天.
As per the instructions in their Github readme, they use a dynamic version (which Android Studio warns me about). It had been working just the day before.
我确实尝试使用他们拥有的唯一显式版本:1.3.0,但这在尝试使用示例代码加载其语音识别模型时导致另一个问题:
I did try using the only explicit version they have: 1.3.0, but this leads to another problem when trying to load their speech recognition model with their sample code:
java.lang.RuntimeException: Failed to load model from 'file:///android_asset/conv_actions_frozen.pb'
[...]
Caused by: java.io.IOException: Not a valid TensorFlow Graph serialization: Shape must be rank 1 but is rank 0 for 'Mfcc' (op: 'Mfcc') with input shapes: [16000,0,257], [].
at org.tensorflow.contrib.android.TensorFlowInferenceInterface.loadGraph(TensorFlowInferenceInterface.java:398)
at org.tensorflow.contrib.android.TensorFlowInferenceInterface.<init>(TensorFlowInferenceInterface.java:97)
我尝试过单独寻找解决方案,但是导入动态版本可以解决该问题.如果有其他解决方法,那也可以解决我的问题.
I've tried searching for a solution to that separately, but importing the dynamic version fixes it. If there was another workaround, that would also solve my problem.
当我尝试转到自述文件中链接到其软件包存储库页面时,我也得到404:
I'm also getting a 404 when I try to go to their package repository page linked to in the readme: https://bintray.com/google/tensorflow/tensorflow-android
我的build.gradle文件:
My build.gradle file:
apply plugin: 'com.android.application'
apply plugin: 'com.google.firebase.firebase-crash'
apply plugin: 'com.google.firebase.firebase-perf'
ext {
grpcVersion = '1.6.1'
}
android {
compileSdkVersion 25
buildToolsVersion "25.0.3"
defaultConfig {
applicationId [HIDDEN]
minSdkVersion 21
targetSdkVersion 25
versionCode 1
versionName "a10_10"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
debuggable true
multiDexEnabled true
}
}
packagingOptions {
exclude 'META-INF/LICENSE'
exclude 'META-INF/INDEX.LIST'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/io.netty.versions.properties'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/project.properties'
}
}
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
}
buildscript {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
dependencies {
classpath 'com.google.gms:google-services:3.1.1'
classpath 'com.google.firebase:firebase-plugins:1.1.1'
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.android.support:design:25.3.1'
compile 'com.android.support:cardview-v7:25.3.1'
compile 'com.android.support:recyclerview-v7:25.3.1'
compile 'com.google.code.findbugs:jsr305:2.0.1'
compile("io.grpc:grpc-okhttp:$grpcVersion") {
exclude group: 'com.google.code.findbugs'
}
compile("io.grpc:grpc-stub:$grpcVersion") {
exclude group: 'com.google.code.findbugs'
}
compile('com.google.cloud:google-cloud-speech:0.25.0-alpha') {
exclude group: 'com.google.cloud', module: 'google-cloud-core-grpc'
exclude group: 'com.google.code.findbugs'
exclude group: 'org.apache.httpcomponents'
exclude group: 'com.google.cloud', module: 'google-cloud-core'
}
compile('com.google.cloud:google-cloud-core-grpc:1.7.0') {
exclude group: 'com.google.cloud', module: 'google-cloud-core'
exclude group: 'com.google.code.findbugs'
exclude group: 'org.apache.httpcomponents'
}
// OAuth2 for Google API
compile('com.google.auth:google-auth-library-oauth2-http:0.8.0') {
exclude module: 'httpclient'
}
//noinspection GradleDynamicVersion
compile 'org.tensorflow:tensorflow-android:+'
compile 'commons-io:commons-io:2.5'
compile 'org.apache.commons:commons-lang3:3.6'
compile 'com.google.firebase:firebase-crash:11.4.2'
compile 'com.google.firebase:firebase-perf:11.4.2'
compile 'com.google.firebase:firebase-auth:11.4.2'
compile 'com.google.firebase:firebase-storage:11.4.2'
compile 'com.google.firebase:firebase-database:11.4.2'
compile 'com.google.android.gms:play-services-auth:11.4.2'
testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'
推荐答案
我遇到了相同的错误
java.lang.RuntimeException: Failed to load model from 'file:///android_asset/conv_actions_frozen.pb'
使用tensorflow-android 1.3.0(在此处找到 https://mvnrepository.com/artifact/org.tensorflow/tensorflow-android/1.3.0 ).
using tensorflow-android 1.3.0 (found here https://mvnrepository.com/artifact/org.tensorflow/tensorflow-android/1.3.0).
However, I was able to get the sample speech recognition app to run using a nightly build (http://ci.tensorflow.org/view/Nightly/job/nightly-android/286/artifact/out/tensorflow.aar).
您必须下载.aar,将其添加到您的项目中并替换
You'll have to download the .aar, add it to your project and replace
compile 'org.tensorflow:tensorflow-android:+'
.aar.
这篇关于Tensorflow:不解决gradle的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!