[ 
https://issues.apache.org/jira/browse/KAFKA-1171?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Arthur updated KAFKA-1171:
--------------------------------

    Attachment: KAFKA-1171.diff

Here is a very simple Gradle project that compiles and tests the "core" part of 
the Kafka source tree.

Notable things missing:
* Multiple versions of Scala (http://issues.gradle.org/browse/GRADLE-2478)
* Other sub-modules (perf, contrib, etc)
* Release packaging
* Other stuff I'm forgetting at the moment

As I understand it, all of these things are possible with existing Gradle 
plugins except for multiple Scala versions - couldn't find an answer there.

Compared with the Ant build, it is much less verbose, but less flexible. Doing 
things like cross-targeting Scala is pretty cut-and-dry with Ant. Setting up 
this simple project up didn't take me very long (~1.5 hours) but I did run into 
some bad documentation from Gradle's website and some unhelpful errors. Here 
are two of the more fun errors I encountered: 
https://gist.github.com/mumrah/6de7be3d6640059904b5

The error messaging gives me pause, b/c (in my experience) it's almost 
immediately obvious what went wrong with your build in Ant. Also notice that 
Gradle is calling the ant scalac target.

Looking forward hear to what others think!

> Gradle build for Kafka
> ----------------------
>
>                 Key: KAFKA-1171
>                 URL: https://issues.apache.org/jira/browse/KAFKA-1171
>             Project: Kafka
>          Issue Type: Improvement
>          Components: packaging
>    Affects Versions: 0.8.1, 0.9.0
>            Reporter: David Arthur
>            Assignee: David Arthur
>         Attachments: KAFKA-1171.diff
>
>
> We have previously discussed moving away from SBT to an 
> easier-to-comprehend-and-debug build system such as Ant or Gradle. I put up a 
> patch for an Ant+Ivy build a while ago[1], and it sounded like people wanted 
> to check out Gradle as well.
> 1. https://issues.apache.org/jira/browse/KAFKA-855



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to