Как использовать сельдерей (версия java) в Котлине

#kotlin #celery

Вопрос:

Я пытаюсь выполнить крошечную poc (операцию добавления в задачу сельдерея) с помощью Kotlin -> сельдерей ->> python.

Python->сельдерей->>Python в порядке. Но с https://github.com/crabhi/celery-java и этот «неправильный» код:

 package poc_kotlin_celery                                        
                                                                 
import com.geneea.celery.*                                       
                                                                 
fun main() {                                                     
   val client: Celery = Celery.builder()                         
        .brokerUri("amqp://localhost//")                       
        .backendUri("rpc://localhost//")                       
        .build();                                                
                                                                 
   val args = arrayOf(1, 2)                                      
   val result: AsyncResult<Int> = client.submit("task.add", args)
   val suma: Int = result.get() as Int                           
                                                                 
                                                                 
   println(suma as Int);                                         
}                                                                
 

Я не могу исправить ошибки компиляции:

 $ gradle run

> Task :app:compileKotlin FAILED
e: /home/miguel/code/poc_kotlin_celery/app/src/main/kotlin/poc_kotlin_celery/App.kt: (15, 16): Unresolved reference: AsyncResult
e: /home/miguel/code/poc_kotlin_celery/app/src/main/kotlin/poc_kotlin_celery/App.kt: (15, 42): Not enough information to infer type variable R

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileKotlin'.
> Compilation error. See log for more details

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 730ms
1 actionable task: 1 executed

 

Комментарии:

1. Если это проблема с api, вам следует подумать о том, чтобы сообщить о проблеме в репозитории.

2. пожалуйста, опубликуйте poc_kotlin_celery/App.kt

3. Вам нужно импортировать Celeri.AsyncResult или квалифицировать его таким образом в коде