Gradle Android Maven 插件不会自动创建 pom 文件

Posted

技术标签:

【中文标题】Gradle Android Maven 插件不会自动创建 pom 文件【英文标题】:Gradle Android Maven Plugin doesn't create the pom file automatically 【发布时间】:2014-09-06 03:55:10 【问题描述】:

我想知道如何使用“Gradle android Maven 插件”创建一个 pom 文件。

我按照http://www.gradle.org/docs/current/userguide/maven_plugin.html(“约定方法”一章)的步骤进行操作。我还创建了目录“buildDir”并且没有错误。该应用程序已成功构建,但 pom 文件不存在。我正在使用 Android Studio IDE。

newpom.xml 文件是否可能仅存在于运行时,而在运行后不存在于我的项目文件夹 buildDir 中?也许我正在寻找找不到的东西。

我的 app/build.gradle 如下所示:

apply plugin: 'android'
android 
    compileSdkVersion 19
    buildToolsVersion "19.1.0"
    defaultConfig 
        minSdkVersion 16
        targetSdkVersion 19
    
    buildTypes 
        release 
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        
    

apply plugin: 'maven'
task writeNewPom << 
    pom 
        project 
            inceptionYear '2008'
            licenses 
                license 
                    name 'The Apache Software License, Version 2.0'
                    url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
                    distribution 'repo'
                
            
        
    .writeTo("$buildDir/newpom.xml")

dependencies 
    compile 'com.android.support:support-v4:+'
    compile 'com.google.code.gson:gson:2.2.4'
    compile 'com.android.support:appcompat-v7:+'
    compile files('libs/retrofit-1.5.1.jar')

如果我错过了什么,有人可以告诉我吗? :)

最好的问候, 菲利普

【问题讨论】:

【参考方案1】:

无需手动创建buildDir,它具有默认值,并引用与build.gradle文件位于同一文件夹中的/build文件夹。

你是否运行了跟随命令?

gradle writeNewPom

运行它后,我在 projectroot/build 文件夹中得到了 newpom.xml 文件,但它不包含依赖项,但是我在 build.gradle 文件中有依赖项。

【讨论】:

我试过你的解决方案,但我得到了Gradle version 1.10 is required. Current version is 2.1. If using the gradle wrapper, try editing the distributionUrl。如何解决?

以上是关于Gradle Android Maven 插件不会自动创建 pom 文件的主要内容,如果未能解决你的问题,请参考以下文章

Android Gradle 插件自定义 Gradle 插件模块 ③ ( Gradle 插件模块发布配置 | Windows 本地 Maven 仓库地址 | 将插件上传到本地 Maven 仓库 )

Android Gradle 插件将自定义 Gradle 插件上传到自建 Maven 仓库 ③ ( 配置上传工件 | 将 Gradle 插件 jar 包源码文档上传到本地Maven 仓库 )

Android Gradle 插件将自定义 Gradle 插件上传到自建 Maven 仓库 ⑦ ( 登录 Maven 私服 | Maven 私服初始化设置 | 创建 Maven 仓库 )

Android Gradle 插件将自定义 Gradle 插件上传到自建 Maven 仓库 ⑤ ( 使用 Sonatype Nexus 搭建 Maven 仓库 )

Gradle Maven 插件“安装”任务不适用于 Android 库项目

Android Gradle 插件将自定义 Gradle 插件上传到自建 Maven 仓库 ⑥ ( 配置 Sonatype Nexus 搭建的 Maven 私服 | 配置端口号 | 配置JVM )