使用gradle将jar上传到本地Maven存储库

Oli*_*ler 7 gradle maven android-studio

这个问题已被问过几次,但不知怎的,我不知道这个问题.Gradle是一个很棒的工具,但它的文档不是很好.没有任何例子使得几乎不可能理解每天不使用它的人.

我正在使用Android Studio,我想将模块输出jar上传到我的本地Maven存储库.

apply plugin: 'java'

dependencies {
    compile 'com.google.http-client:google-http-client-android:1.18.0-rc'
}


apply plugin: 'maven'
configure(install.repositories.mavenInstaller) {
    pom.project {
        groupId 'com.example'
        artifactId 'example'
        packaging 'jar'
    }
}
Run Code Online (Sandbox Code Playgroud)

当我在Android Studio中开始构建时,我可以在Gradle选项卡上看到

:install
Run Code Online (Sandbox Code Playgroud)

被调用.我的build文件夹中也有一个新jar,但是jar没有上传到Maven.[Maven回购存在且Google appengine gradle插件从同一项目的另一个模块上传它的jar就好了.]

我错过了什么?

Pet*_*ser 5

我怀疑问题是你只是编辑POM(via pom.project),而不是配置用于安装的实际Maven坐标.请尝试以下方法:

// best way to set group ID
group = 'com.example'

install {
    repositories.mavenInstaller {
        // only necessary if artifact ID diverges from project name
        // the latter defaults to project directory name and can be
        // configured in settings.gradle
        pom.artifactId = 'myName' 
        // shouldn't be needed as this is the default anyway
        pom.packaging = 'jar'
    }
}
Run Code Online (Sandbox Code Playgroud)

PS:samples完整Gradle发行版中的目录包含许多示例版本,也适用于maven插件.

  • 可能意味着您没有应用“maven”插件。 (2认同)