2015-04-15 9 views
5

Próbuję opublikować bibliotekę Androida w jcenter. Śledziłem samouczek https://github.com/danielemaddaluno/gradle-jcenter-publish. Wszystko działa dobrze, dopóki próbuję wykonaćOpublikuj bibliotekę Android jcenter: gradle bintrayUpload nie znajduje bibliotek

gradle bintrayUpload

Kiedy zrobić otrzymuję BUILD FAILED. Kiedy patrzę na błędy widzę

package com.android.volley does not exist

Dlatego bibliotek, które mam włączone jako Gradle uzależnienia nie znajdowane są

dependencies { 
    compile 'com.mcxiaoke.volley:library:1.+' (...) 
} 

Te same happends z innymi bibliotekami uwzględnione.

Jak mogę rozwiązać ten problem?

załączam moduł build.gradle

apply plugin: 'com.android.library' 
apply plugin: 'com.github.dcendents.android-maven' 
apply plugin: "com.jfrog.bintray" 

android { 
    compileSdkVersion 21 
    buildToolsVersion "21.1.2" 

    defaultConfig { 
     minSdkVersion 8 
     targetSdkVersion 22 
     versionCode 1 
     versionName "0.0.1" 
    } 

    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' 
     } 
    } 
} 

dependencies { 
    compile 'com.mcxiaoke.volley:library:1.+' 
    compile 'com.shamanland:fab:0.0.8' 
    compile 'com.google.code.gson:gson:2.2.4' 
    compile 'com.android.support:appcompat-v7:22.0.0' 
    compile 'com.android.support:gridlayout-v7:21.0.3' 
} 

def siteUrl = "SOME_URL" 
def gitUrl = 'SOME_URL' 
group = "GROUP_ID" 
install { 
    repositories.mavenInstaller { 
     // This generates POM.xml with proper parameters 
     pom { 
      project { 
       packaging 'aar' 

       // Add your description here 
       name 'NAME' 
       description = 'DESCRIPTION' 
       url siteUrl 

       // Set your license 
       licenses { 
        license { 
         name 'The Apache Software License, Version 2.0' 
         url 'http://www.apache.org/licenses/LICENSE-2.0.txt' 
        } 
       } 
       developers { 
        developer { 
         id 'MY_ID' 
         name 'MY_NAME' 
         email 'MY_EMAIL' 
        } 
       } 
       scm { 
        connection gitUrl 
        developerConnection gitUrl 
        url siteUrl 
       } 
      } 
     } 
    } 
} 



task sourcesJar(type: Jar) { 
    from android.sourceSets.main.java.srcDirs 
    classifier = 'sources' 
} 

task javadoc(type: Javadoc) { 
    source = android.sourceSets.main.java.srcDirs 
    classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) 
} 

task javadocJar(type: Jar, dependsOn: javadoc) { 
    classifier = 'javadoc' 
    from javadoc.destinationDir 
} 
artifacts { 
    archives javadocJar 
    archives sourcesJar 
} 

Properties properties = new Properties() 
properties.load(project.rootProject.file('local.properties').newDataInputStream()) 

// https://github.com/bintray/gradle-bintray-plugin 
bintray { 
    user = properties.getProperty("bintray.user") 
    key = properties.getProperty("bintray.apikey") 

    configurations = ['archives'] 
    pkg { 
     repo = "maven" 
     // it is the name that appears in bintray when logged 
     name = "androidupdatechecker" 
     websiteUrl = siteUrl 
     vcsUrl = gitUrl 
     licenses = ["Apache-2.0"] 
     publish = true 
     version { 
      gpg { 
       sign = true //Determines whether to GPG sign the files. The default is false 
       passphrase = properties.getProperty("bintray.gpg.password") //Optional. The passphrase for GPG signing' 
      } 
//   mavenCentralSync { 
//    sync = true //Optional (true by default).  Determines whether to sync the version to Maven Central. 
//    user = properties.getProperty("bintray.oss.user")   //OSS user token 
//    password = properties.getProperty("bintray.oss.password") //OSS user password 
//    close = '1' //Optional property. By default the staging repository is closed and artifacts are released to Maven Central. You can optionally turn this behaviour off (by puting 0 as value) and release the version manually. 
//   } 
     } 
    } 
} 

oraz projekt build.gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules. 
buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:1.1.2' 
     classpath 'com.github.dcendents:android-maven-plugin:1.2' 
     classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:1.1" 

    } 
} 

allprojects { 
    repositories { 
     jcenter() 
    } 
} 
+0

Wyślij swój build.gradle –

+0

@GabrieleMariotti pliki dodane – Mateu

+0

sam problem tutaj, będę aktualizować jeśli znajdę rozwiązanie. czy kiedykolwiek to rozwiązałeś? –

Odpowiedz

0

biblioteka jest w repozytorium maven, więc trzeba zadeklarować maven centralne repozytorium. Dodaj go w swoim projekcie build.gradle plik tak:

buildscript { 
    repositories { 
     mavenCentral() 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:1.1.2' 
     classpath 'com.github.dcendents:android-maven-plugin:1.2' 
     classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:1.1" 

    } 
} 
-1

Proszę odnieść się do następujących:

user = properties.getProperty("bintray.user") 
    key = properties.getProperty("bintray.apikey") 

W tym momencie trzeba w lokalnym. Zarejestrowany w plikach właściwości,

Bintray. User = XXX 
Bintray apikey = XXX 
Powiązane problemy