使用 Gradle ivy-publish 插件生成 ivy.xml
Posted
技术标签:
【中文标题】使用 Gradle ivy-publish 插件生成 ivy.xml【英文标题】:Generate ivy.xml with Gradle ivy-publish plugin 【发布时间】:2013-07-08 15:00:07 【问题描述】:嗨,我想创建一个空项目(没有源代码),它可以使用我的 jar helloWorldPlugin 并使用 ivy 描述符进行操作,所以我在一个空项目目录中创建了 build.gradle,内容如下:
apply plugin: 'java'
apply plugin: 'ivy-publish'
publishing
publications
myPublication(IvyPublication)
from components.java
repositories
ivy
url "$project.rootDir/build/publish"
当我执行时
gradle publishmyPublicationPublicationToIvyRepository
我得到了 xml 描述符
<?xml version="1.0" encoding="UTF-8"?>
<ivy-module version="2.0">
<info organisation="org.moo" module="ivypublish" revision="9.0-m1-SNAPSHOT" status="integration" publication="20130710180056"/>
<configurations>
<conf name="default" visibility="public" extends="runtime"/>
<conf name="runtime" visibility="public"/>
</configurations>
<publications>
<artifact name="ivypublish" type="jar" ext="jar" conf="runtime"/>
</publications>
<dependencies>
<dependency org="org.moo" name="helloWorldPlugin" rev="9.2-m1-SNAPSHOT" conf="runtime->default" revConstraint="latest.milestone"/>
</dependencies>
</ivy-module>
1.但是我没有测试、编译等所有java插件配置,为什么?
2.如果我不在xml文件中写from components.java,则只有标签和其他标签,如依赖,conf 是空的。为什么?
3.如何让Gradle在ivy描述符中写入所有java插件配置?
【问题讨论】:
【参考方案1】:这里有点晚了,但我相信这可能缺少 myPublication 中的配置部分。例如
configurations
unitTests extend 'runtime'
然后是单元测试配置的关联工件和任务定义
【讨论】:
以上是关于使用 Gradle ivy-publish 插件生成 ivy.xml的主要内容,如果未能解决你的问题,请参考以下文章
使用android gradle插件3.0.0比gradle插件2.3.3慢