And here comes the solution: http://github.com/hseeberger/scala-profiles-demo
Run Maven twice: 1. mvn install 2. mvn -Pscala-2.7.7 install You wil get exactly what we need: ./scala-profiles-demo_2.7.7 ./scala-profiles-demo_2.7.7/1.0-SNAPSHOT ./scala-profiles-demo_2.7.7/1.0-SNAPSHOT/maven-metadata-local.xml ./scala-profiles-demo_2.7.7/1.0-SNAPSHOT/scala-profiles-demo_2.7.7-1.0-SNAPSHOT.jar ./scala-profiles-demo_2.7.7/1.0-SNAPSHOT/scala-profiles-demo_2.7.7-1.0-SNAPSHOT.pom ./scala-profiles-demo_2.7.7/maven-metadata-local.xml ./scala-profiles-demo_2.8.0 ./scala-profiles-demo_2.8.0/1.0-SNAPSHOT ./scala-profiles-demo_2.8.0/1.0-SNAPSHOT/maven-metadata-local.xml ./scala-profiles-demo_2.8.0/1.0-SNAPSHOT/scala-profiles-demo_2.8.0-1.0-SNAPSHOT.jar ./scala-profiles-demo_2.8.0/1.0-SNAPSHOT/scala-profiles-demo_2.8.0-1.0-SNAPSHOT.pom ./scala-profiles-demo_2.8.0/maven-metadata-local.xml Heiko On 8 September 2010 08:19, Heiko Seeberger <[email protected]>wrote: > Hi Ceki, > > Different Scala versions are binary incompatible and I don't believe that > will change in the near future, even if Martin has said that once. IMHO > 2.8.1 will not be binary compatible with 2.8.0. And 2.8.2 won't be with > 2.8.1 nor with 2.8.0. And of course neither of these is compatible with > 2.7.x. If you are interested in the reasons, you will find numerous > resources on the web, e.g. [1] or [2]. Maybe starting from 2.9 EPFL will > manage to solve that issue. > > But that's not a reason to pack and go home. The solution is simple: > Cross-build your libraries and frameworks against all the versions you want > to support. If you look at an example of such a library deployed to a Maven > style repository you will see that the artifact ID is suffixed with _2.8.0 > or whatever Scala version [3]. So there is not only the project version but > also the Scala version. SBT [4] makes that very easy, but I think I know a > solution for Maven, too. > > Akka has not yet been released (only milestones) and therefore they can > target only one Scala version. But they already do it the style I described, > i.e. they are ready for multiple versions. Lift already does builds against > 2.7.7 and 2.8.0. And there will be others. > > For something as widespread as SLF4J there in NO WAY not supporting 2.7.7 > plus 2.8.0 plus 2.8.x. It just must be cross-built. > > So your (d) is not an option, but as I already mentioned I hope to find a > Maven based solution. > > Heiko > > [1] > http://stackoverflow.com/questions/2053265/scala-binary-incompatibility-between-releases > [2] > http://it-republik.de/jaxenter/news/Scala---Die-Reifepruefung-056248.html > [3] > http://scala-tools.org/repo-releases/com/weiglewilczek/scalamodules/scalamodules-core_2.8.0/2.0.0.RC2/ > [4] http://code.google.com/p/simple-build-tool/ > > On 7 September 2010 22:59, Ceki Gülcü <[email protected]> wrote: > >> On 07/09/2010 10:53 PM, Ceki Gülcü wrote: >> >>> On 07/09/2010 8:08 PM, Heiko Seeberger wrote: >>> >> >> As we will probably see Scala 2.8.1 end of this year and milestones and >>>> release candidates even earlier, this is an important issue for SLF4S. >>>> How could we deal with that? >>>> >>> >>> There is no way 2.8.1 will be (or can be) incompatible with 2.8. The 2.7 >>> to 2.8 binary incompatibility was a single fluke occurrence. >>> >> >> 2.8.1 will be binary compatible with 2.8.0. See http://bit.ly/93ie5V >> >> _______________________________________________ >> slf4j-dev mailing list >> [email protected] >> http://qos.ch/mailman/listinfo/slf4j-dev >> > > > > -- > Heiko Seeberger > > > Company: weiglewilczek.com > Blog: heikoseeberger.name > Follow me: twitter.com/hseeberger > OSGi on Scala: scalamodules.org > Lift, the simply functional web framework: liftweb.net > Akka - Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through > Actors: akkasource.org > -- Heiko Seeberger Company: weiglewilczek.com Blog: heikoseeberger.name Follow me: twitter.com/hseeberger OSGi on Scala: scalamodules.org Lift, the simply functional web framework: liftweb.net Akka - Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through Actors: akkasource.org
_______________________________________________ slf4j-dev mailing list [email protected] http://qos.ch/mailman/listinfo/slf4j-dev
