2017-03-02 49 views
0

使用的Grails 1.3.9無法解析類AsyncHttpBuilder

buildConfig.groovy

compile "org.grails.plugins:async-http-builder" 

代碼:

AsyncHttpBuilder client = new AsyncHttpBuilder() 
    Promise<HttpClientResponse> p = client.post("http://someuUrl") { 
     contentType 'application/json' 
     json { 
      receiver number 
      message content 
      sender sender 
     } 
    } 
    p.onComplete { HttpClientResponse resp -> 
     println(resp); 
    } 

我得到的主題標題錯誤。我在這裏錯過了什麼?

+1

真的是版本1.3.9? –

+0

不幸的是,很老的項目 – Jacob

回答

0

檢查問題缺少插件

  1. 檢查,如果你有mavenRepo "https://repo.grails.org/grails/plugins"repositories {在BuildConfig.groovy
  2. 提供插件版本一個相當一般步驟,所以不是"org.grails.plugins:async-http-builder"嘗試"org.grails.plugins:async-http-builder:1.0.0"
  3. 嘗試grails refresh-dependencies在終端

看着提交日期,它看起來像一個新鮮的插件(< 1歲),所以它可能只適用於較新的Grails版本(2 +/3 +)。

documentation狀態

注意,此客戶端不需要Grails的本身,並可以很容易地獨立使用,或作爲一個獨立的HTTP客戶端。 (...)

要開始使用的HTTP客戶端,您應該聲明對Grails的-HTTP客戶端項目的依賴在你的build.gradle文件:

compile "org.grails:http-client:VERSION"

所以我可能會試試,因爲插件可能無法與您的舊版Grails版本兼容。

+0

https://github.com/grails/grails-http – Jacob

+0

@Jacob,你可以在這裏找到它嗎? https://grails.org/plugins/ Grails 1/2的插件可能與Grails 3+的插件不同,它們確實有獨立的站點。 我會在一分鐘內更新我的答案 –

+0

看起來你是對的我完全錯過了這個事實,這只是一個grails3插件。無論如何,嘗試做一個異步請求我完全被舊的Grails阻止。即使是Promise類也不被支持。 – Jacob