首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在存储库容器上找不到参数[]的jcenter()方法

在存储库容器上找不到参数[]的jcenter()方法
EN

Stack Overflow用户
提问于 2014-12-14 22:46:32
回答 8查看 62.5K关注 0票数 45

我刚接触Gradle和bintray。我想发布this project,这样Maven和SBT用户就可以使用它了。我不是这个包的原始作者;它是appears to have been abandoned;我只想发布当前的HEAD。

~/.gradle/gradle.properties类似于:

代码语言:javascript
复制
bintrayUser=mslinn
bintrayKey=blahblah

build.gradle看起来像这样:

代码语言:javascript
复制
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.0'
    }
}
apply plugin: 'com.jfrog.bintray'

allprojects {
    apply plugin: 'idea'

    group = 'org.jfrog.example.bintray.gradle'
    version = '1.0'
}

subprojects {
    apply plugin: 'java'
    apply plugin: 'maven-publish'
    apply plugin: 'com.jfrog.bintray'

    sourceCompatibility = 1.6
    targetCompatibility = 1.6

    dependencies {
        testCompile 'junit:junit:4.7'
    }

    // custom tasks for creating source/javadoc jars
    task sourcesJar(type: Jar, dependsOn: classes) {
        classifier = 'sources'
        from sourceSets.main.allSource
    }

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

    // add javadoc/source jar tasks as artifacts
    artifacts {
        archives sourcesJar //, javadocJar
    }

    repositories {
        jcenter()
    }

    publishing {
        publications {
            mavenJava(MavenPublication) {
                if (plugins.hasPlugin('war')) {
                    from components.web
                } else {
                    from components.java
                }

                artifact sourcesJar {
                    classifier "sources"
                }

                artifact javadocJar {
                    classifier "javadoc"
                }
            }
        }
    }

    bintray {
        user = bintrayUser //this usually comes form gradle.properties file in ~/.gradle
        key = bintrayKey //this usually comes form gradle.properties file in ~/.gradle
        publications = ['mavenJava'] // see publications closure
        pkg { //package will be created if does not exist
            repo = 'Java-WebSocket'
//            userOrg = 'myorg' // an optional organization name when the repo belongs to one of the user's orgs
            name = 'Java-WebSocket'
            desc = 'Current HEAD of abandoned project'
            licenses = ['MIT']
            labels = ['websocket', 'java']
        }
    }
}

task wrapper(type: Wrapper) {
    gradleVersion = '1.10'
}

以下是问题所在:

代码语言:javascript
复制
$ gradle bintrayUpload

FAILURE: Build failed with an exception.

* Where:
Build file '/var/work/experiments/websockets/Java-WebSocket/build.gradle' line: 3

* What went wrong:
A problem occurred evaluating root project 'Java-WebSocket'.
> Could not find method jcenter() for arguments [] on repository container.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

我正在寻找关于如何解决错误消息的建议,以及关于我可能遇到的任何安装问题的建议,以便将此项目包含到JCenter中,以便所有人都可以使用发布的bintray项目。

EN

回答 8

Stack Overflow用户

发布于 2014-12-15 13:13:41

仅在评论中总结一下讨论:

Gradle在1.7版本中添加了jcenter()快捷方式。之前的任何版本都将失败,并出现此异常。你仍然可以通过将jcenter添加为一个普通的maven repo来使用它:

代码语言:javascript
复制
repositories {
    maven {
        url "https://jcenter.bintray.com"
    }
    ....
}
票数 51
EN

Stack Overflow用户

发布于 2017-10-13 02:07:23

这是我在一个安卓项目中得到的,需要在gradle-wrapper.properties中将Gradle升级到4.1。

票数 6
EN

Stack Overflow用户

发布于 2018-08-27 20:36:11

转到Android 项目选项卡,在资源管理器折叠Gradle Scripts.You中会找到一个名为gradle-wrapper.properties的文件。

打开文件并选择all,然后粘贴以下代码:

代码语言:javascript
复制
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip

立即同步

但在此之前,您必须在build.gradle (

)文件中进行更改

打开文件,选择全部,并将以下代码复制到整个工作表中:

代码语言:javascript
复制
buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
        classpath 'com.google.gms:google-services:4.0.0'


        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven {url 'https://jitpack.io'}
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

立即同步

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27470443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档