Gradle无法解析org.apache.commons:commons-imaging,但是在所有提供的三个存储库中都可用:

  • http://jump-pilot.sourceforge.net/repository
  • https://repo.adobe.com/nexus/content/repositories/public/
  • https://repository.apache.org/content/repositories/snapshots/

  • 日志的这一部分很有趣,Gradle仅在jcenter和本地文件系统中显示:



    控制台日志(请求org.apache.commons:commons-imaging:1.0-SNAPSHOT):
    $ react-native run-android
    JS server already running.
    Building and installing the app on the device (cd android && ./gradlew installDebug)...
    
    FAILURE: Build failed with an exception.
    
    * What went wrong:
    A problem occurred configuring project ':app'.
    > Could not resolve all dependencies for configuration ':app:_debugCompile'.
       > Could not find org.apache.commons:commons-imaging:1.0-SNAPSHOT.
         Searched in the following locations:
             https://jcenter.bintray.com/org/apache/commons/commons-imaging/1.0-SNAPSHOT/maven-metadata.xml
             https://jcenter.bintray.com/org/apache/commons/commons-imaging/1.0-SNAPSHOT/commons-imaging-1.0-SNAPSHOT.pom
             https://jcenter.bintray.com/org/apache/commons/commons-imaging/1.0-SNAPSHOT/commons-imaging-1.0-SNAPSHOT.jar
             file:/Users/user/Library/Android/sdk/extras/android/m2repository/org/apache/commons/commons-imaging/1.0-SNAPSHOT/maven-metadata.xml
             file:/Users/user/Library/Android/sdk/extras/android/m2repository/org/apache/commons/commons-imaging/1.0-SNAPSHOT/commons-imaging-1.0-SNAPSHOT.pom
             file:/Users/user/Library/Android/sdk/extras/android/m2repository/org/apache/commons/commons-imaging/1.0-SNAPSHOT/commons-imaging-1.0-SNAPSHOT.jar
             file:/Users/user/Library/Android/sdk/extras/google/m2repository/org/apache/commons/commons-imaging/1.0-SNAPSHOT/maven-metadata.xml
             file:/Users/user/Library/Android/sdk/extras/google/m2repository/org/apache/commons/commons-imaging/1.0-SNAPSHOT/commons-imaging-1.0-SNAPSHOT.pom
             file:/Users/user/Library/Android/sdk/extras/google/m2repository/org/apache/commons/commons-imaging/1.0-SNAPSHOT/commons-imaging-1.0-SNAPSHOT.jar
         Required by:
             ReactNativeProject:app:unspecified > ReactNativeProject:react-native-image-store-ext:unspecified
    

    控制台日志(请求org.apache.commons:commons-imaging:+):
    $ react-native run-android
    JS server already running.
    Building and installing the app on the device (cd android && ./gradlew installDebug)...
    
    FAILURE: Build failed with an exception.
    
    * What went wrong:
    A problem occurred configuring project ':app'.
    > Could not resolve all dependencies for configuration ':app:_debugCompile'.
       > Could not find any matches for org.apache.commons:commons-imaging:+ as no versions of org.apache.commons:commons-imaging are available.
         Required by:
             ReactNativeProject:app:unspecified > ReactNativeProject:react-native-image-store-ext:unspecified
    
    build.gradle:
    buildscript {
      repositories { jcenter() }
      dependencies { classpath 'com.android.tools.build:gradle:2.1.0' }
    }
    apply plugin: 'com.android.library'
    android {
      compileSdkVersion 23
      buildToolsVersion "23.0.1"
      defaultConfig {
        minSdkVersion 16
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
      }
      lintOptions { abortOnError false }
    }
    repositories {
      mavenCentral()
      maven { url "http://jump-pilot.sourceforge.net/repository" }
      maven { url "https://repo.adobe.com/nexus/content/repositories/public/" }
      maven { url "https://repository.apache.org/content/repositories/snapshots/" }
    }
    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        testCompile 'junit:junit:4.12'
        compile 'com.android.support:appcompat-v7:23.4.0'
        compile "com.facebook.react:react-native:+"
        compile 'org.apache.commons:commons-imaging:+'
    }
    

    最佳答案

    android项目中有2个build.gradle文件:一个在主项目文件夹中,一个在应用程序文件夹中。该存储库应在项目文件夹内的allprojects块下定义。这里是我的build.gradle的示例,该示例成功构建了Apache Commons镜像。

    buildscript {
        repositories {
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:2.3.3'
    
            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files
        }
    
    }
    
    allprojects {
        repositories {
            jcenter()
            maven { url "http://jump-pilot.sourceforge.net/repository" }
        }
    }
    
    task clean(type: Delete) {
        delete rootProject.buildDir
    }
    

    关于Gradle找不到org.apache.commons :commons-imaging,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42071583/

    10-16 10:08