[ https://issues.apache.org/jira/browse/KAFKA-139?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13135155#comment-13135155 ]
Joshua Hartman commented on KAFKA-139: -------------------------------------- This is actually a very important issue that needs to be thought about and is closely related to mavenizing the project. First some background info: Scala is not backwards compatible, except for bug fix releases like scala 2.8.0 -> scala 2.8.1. Furthermore, the library jar needs to match the jar it was compiled against. Fortunately, source code has been forwards compatible since scala 2.8, which means that if you build against 2.8, you should be able to build against 2.9. The standard way to handle this issue in the scala world is to publish separate artifacts for their jars. So for instance, we could publish kafka-core_2.8.0, kafka-core_2.8.1, kafka-core_2.9.0, and kafka-core_2.9.1. You can configure sbt to do this with one line of code. It's a bit gross, but it's the only way I know of to solve this problem. Without doing this, we'll force users of the library to depend on a specific version of scala. Please read https://github.com/harrah/xsbt/wiki/Cross-Build to learn a bit more. I'd really appreciate input from the developer team about this. Kafka is on a really old version of scala and it will probably be an issue for non-linkedin users very soon. (Plus if I have artifacts built against 2.9.1 for all LinkedIn scala jars, I can upgrade LinkedIn to 2.9.1 in about a day). > cross-compile multiple Scala versions > ------------------------------------- > > Key: KAFKA-139 > URL: https://issues.apache.org/jira/browse/KAFKA-139 > Project: Kafka > Issue Type: Improvement > Components: packaging > Reporter: Chris Burroughs > Fix For: 0.8 > > > Since scala does not maintain binary compatibly between versions, > organizations tend to have to move all of there code at the same time. It > would thus be very helpful if we could cross build multiple scala versions. > http://code.google.com/p/simple-build-tool/wiki/CrossBuild > Unclear if this would require KAFKA-134 or just work. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira