Vì Scala 2.10.1 sắp ra mắt, tôi tin rằng, tôi muốn đảm bảo rằng các tạo tác mà tôi xuất bản bây giờ sẽ tự động làm việc với một scala-library.jar của phiên bản đó. Tôi sử dụng SBT 0.12.2 xuất bản, và với một thiết lập củaPhiên bản scala-library.jar trong sbt xuất bản hiện vật
scalaVersion := "2.10.0"
tôi nhận được một cách chính xác kèm theo phiên bản tương thích nhị phân để vật của tôi, ví dụ
<artifactId>mylibrary_2.10</artifactId>
... nhưng scala thư viện phụ thuộc vẫn nói 2.10.0:
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.10.0</version> <!-- !!! -->
</dependency>
Tôi cho rằng đó không phải là chính xác, và nó nên sử dụng 2.10 hay 2.10 + ở đây.?
Tôi cũng đã cố gắng thêm scalaBinaryVersion := "2.10"
nhưng điều đó dường như không thay đổi bất cứ điều gì.
Một ý tưởng khác mà tôi đã sử dụng là scalaVersion := "2.10.+"
. Sbt mất mãi mãi với Getting Scala 2.10.+ ...
, nhưng cuối cùng nó vẫn ổn và pom
có phiên bản này ngay bây giờ cho scala-library.jar. Vì vậy, có lẽ đây là cách chính xác?
Dường như phổ biến hơn là 'xây dựng chéo'. Xem http://www.scala-sbt.org/release/docs/Detailed-Topics/Cross-Build để biết thêm thông tin. Tôi không thể cho bạn biết nếu giải pháp bạn tìm thấy là đúng cách. – EECOLOR
Vâng, một điều tôi có thể nói bây giờ là '2.10. +' Bổ sung thêm các vấn đề nghiêm trọng.Tôi chỉ thấy mình bị lỗi typer ở những nơi ngẫu nhiên, cho đến khi tôi phát hiện ra bằng cách nào đó một số dự án đã vẽ một scala-compiler.jar '2.10.1-RC1', rõ ràng là _không tương thích nhị phân_. –
Vâng, phiên bản của thư viện Scala tương đương với phiên bản Scala bạn đang nhắm mục tiêu, vì thư viện scala cho phiên bản 2.10.1 khác với thư viện scala 2.10.0. Tất cả các phiên bản Scala 2.10 được cho là tương thích nhị phân. Bạn có thể đăng loại lỗi nào bạn có khi chuyển từ 2,10.0 sang 2,10.1 không? –