Ross Black wrote:
Hi,
I am using an existing ivy repository that uses ivy types to group
files within a single configuration:
eg ivy.xml snippet
--
<configurations>
<conf name="default"/>
</configurations>
<publications>
<artifact name="junit"
type="jar"
conf="default"/>
<artifact name="junit-src"
type="source"
ext="zip"
conf="*"/>
<artifact name="junit-license"
type="license"
ext="html"
conf="*"/>
</publications>
--
I could not see an obvious way to restrict a configuration by ivy
type, but I eventually discovered that I could extract a subset of
files from the configuration using the following gradle code:
--
task resolve << {
Set<ResolvedArtifact> artifacts =
configurations.testCompile.resolvedConfiguration.resolvedArtifacts
def typedArtifacts = artifacts.findAll { artifact ->
artifact.type == 'license'
}
println("Artifacts = " +
ResolvedDependencies.getFilesFromArtifacts(typedArtifacts))
}
--
Is this code ok (is it expected that it will continue to be in the
interface), or is there a better way to work with ivy types?
There isn't a better way at the moment.
Is there a way to specify that compilation tasks etc only use specific
ivy types from a configuration, or are there plans/ideas to implement
something to allow this sort of functionality.
This would be good. Could you add a JIRA issue for this?
--
Adam Murdoch
Gradle Developer
http://www.gradle.org
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email