Rafael Serrano wrote:
> Hi all,
>
> I'm using gradle's multi-project builds in order to simplify several related
> projects, but I'm not guessing how to import / export artifacts among them.
>
> My use case: I have two projects using the WAR plugin, and they work as
> consumer / producer. "Producer" is deployed as a WAR, but also generates a
> JAR used by "consumer". The problem is that depending on "Producer" means
> both on the JAR and the WAR, but I want to exclude the WAR. How can this be
> done?
>
> Here are the two snippets of my build.gradle files (my master project does
> not declare any dependency):
> build.gradle (remoteService)
> ...
> jar.enabled = true
> artifacts {
> archives jar
> }
>
> build.gradle (client)
> ...
> compile project(':remoteService) {
> transitive = false
> }
>
> Thanks in advance. Regards
> Rafa
>
There's a JIRA issue for this problem:
http://jira.codehaus.org/browse/GRADLE-687One possible work around is to remove the war artifact from the archives
configuration:
remoteService/build.gradle
configurations.archives.artifacts.each {
if (it.archiveTask == war) {
configurations.archives.removeArtifact(it)
}
}
jar.enabled = true
artifacts {
archives jar
}
Another option is to use a different configuration for project dependencies:
configurations {
projectDependency
runtime {
extendsFrom = [projectDependency] as Set
}
}
jar.enabled = true
artifacts {
projectDependency jar
}
--
Adam Murdoch
Gradle Developer
http://www.gradle.org---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email