2013-05-17 34 views
31

Trong một Java Chơi 2.1.1 ứng dụng tôi nhận được lỗi sau:IllegalStateException: không thể nhận được hiện vật khi dữ liệu chưa được tải cho Guava 12.0?

[myproject] $ update 
[info] Updating {file:/C:/path/myproject/}myproject... 
[info] Resolving ... 
[error] impossible to get artifacts when data has not been loaded. IvyNode = com.google.guava#guava;12.0 
[error] (*:update) java.lang.IllegalStateException: impossible to get artifacts when data has not been loaded. IvyNode = com.google.guava#guava;12.0 
[error] Total time: 230 s, completed 17.05.2013 19:16:41 

Build.scala

"com.google.guava" % "guava" % "14.0.1", 
"org.mydependency" % "mydependency" % "1.0-SNAPSHOT" changing() exclude("org.jboss.netty","netty") exclude("com.google.guava", "guava") exclude("log4j", "log4j"), 

Điều đó gây ra lỗi này (tất cả hoạt động tốt trước đó) là một thay đổi phụ thuộc trong mydependency:

cũ:

<dependency> 
    <groupId>com.thinkaurelius.titan</groupId> 
    <artifactId>titan-berkeleyje</artifactId> 
    <version>0.3.1</version> 
</dependency> 

mới:

<dependency> 
    <groupId>com.thinkaurelius.titan</groupId> 
    <artifactId>titan-cassandra</artifactId> 
    <version>0.3.1</version> 
</dependency> 

Tôi không muốn ổi 12.0 anyway và nó là gì và đã được loại trừ.

Tôi có thể yêu cầu Play 2.1.1 sử dụng Ivy mới hơn không?

Trong plugins.sbt tôi có:

addSbtPlugin("play" % "sbt-plugin" % "2.1.1") 

sửa chữa tạm thời Là một đề cập ở đây Apache IVY error message? : impossible to get artifacts when data has not been loaded tay thêm phụ thuộc giải quyết nó: Tôi đã thêm

"com.google.guava" % "guava" % "12.0" 

và vấn đề đã biến mất.

+3

Tôi chỉ cần chạy vào trong này khi tôi đã thêm một sự phụ thuộc mà cố gắng để transitively kéo trong * slf4j-api; 1.6.1 * khi dự án của tôi đã bao gồm * slf4j-api, 1.7.5 *. Tôi đã làm việc xung quanh nó bằng cách làm cho phụ thuộc nói 'intransitive()'. – earldouglas

+0

@ gonfi-den-tschal Sự cố vẫn tồn tại? –

+0

Những người khác dường như vẫn gặp sự cố. Tôi đã không đi qua nó nữa, nhưng sau đó tôi vẫn đang sử dụng sửa chữa tạm thời. Tôi đã không chạm vào dự án này cũng như nâng cấp Play trong một thời gian. –

Trả lời

4

Phát 2.1.x sử dụng sbt 0.12, sử dụng Ivy 2.3.0-rc1, nhưng có vẻ như đây vẫn là một vấn đề. Nếu bạn có thể đưa ra các bước tái tạo bằng cách sử dụng các thư viện công khai, vui lòng mở một vấn đề Github với một liên kết đến nhận xét này. Rõ ràng hơn

8

Thay vì sử dụng một phiên bản thấp hơn, bạn có thể thử thêm dòng này để .sbt file:

dependencyOverrides += "com.google.guava" % "guava" % "14.0.1"