首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从Gradle将XML文件发布到Maven repo

如何从Gradle将XML文件发布到Maven repo
EN

Stack Overflow用户
提问于 2015-10-28 10:38:04
回答 2查看 1.4K关注 0票数 3

我有一个静态xml文件,我想使用Maven发布插件从Gradle发布一个Maven存储库(目前是我的本地maven repo )。

build.gradle看起来是这样的:

代码语言:javascript
复制
apply plugin: 'maven-publish'

group 'com.example.gradletest'
version '1.0-SNAPSHOT'

publishing {
    publications {
        beta(MavenPublication) {
            artifactId 'feature-file'
            artifact 'src/main/resources/features.xml'
        }
    }
}

这是可行的,但我也想添加一个分类器,我应该在哪里定义它呢?maven.html在68.2.2节中说,应该可以这样做:

代码语言:javascript
复制
publishing {
    publications {
        beta(MavenPublication) {
            artifactId 'feature-file'
            artifact ('src/main/resources/features.xml') {
                classifier 'features'
            }
        }
    }
}

但是我得到了这个错误:

配置根项目“testapplication”时出现问题。

在执行模型规则时抛出的异常: org.gradle.api.publish.plugins.PublishingPlugin$Rules#publishing(org.gradle.api.plugins.ExtensionContainer)无方法签名: java.io.File.call()适用于参数类型:(build_101arjzoe908rdkh5aikrn6bt$_run_closure5_closure16_closure19_closure20)值: build_101arjzoe908rdkh5aikrn6bt$_run_closure5_closure16_closure19_closure20@2aa7399c可能的解决方案:等待()、any()、等待(长)、each(groovy.lang.Closure)、any(groovy.lang.Closure)、list()

使用下面的解决方案将正确地添加分类器,但也会将pom.xml中的打包从<packaging>xml</packaging>更改为<packaging>pom</packaging>。我不想这样。

代码语言:javascript
复制
publishing {
    publications {
        beta(MavenPublication) {
            artifactId 'feature-file'
            artifact source: 'src/main/resources/features.xml', classifier: 'features'
        }
    }
}
EN

回答 2

Stack Overflow用户

发布于 2015-10-30 04:52:00

按照指定的这里使用映射语法。

代码语言:javascript
复制
publishing {
    publications {
        beta(MavenPublication) {
            artifactId 'feature-file'
            artifact source: 'src/main/resources/features.xml', classifier: 'features'
        }
    }
}
票数 2
EN

Stack Overflow用户

发布于 2017-02-23 09:27:45

添加pom { packaging 'xml' }

为我工作(gradle 3.2.1)

publishing { publications { beta(MavenPublication) { artifactId 'feature-file' artifact source: 'src/main/resources/features.xml', classifier: 'features' pom { packaging 'xml' } } } }

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

https://stackoverflow.com/questions/33388818

复制
相关文章

相似问题

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