Ошибка при использовании json классов из kotlin REPL и чистых файлов - PullRequest
0 голосов
/ 30 января 2020

Я работаю над проектом Android, который должен обрабатывать json данные, полученные из веб-API. В рамках проекта я без проблем использовал классы JSONObject и JSONArray (пакет org.json).

Всегда запускать компиляцию, запуск и навигацию в приложении каждый раз, когда я хочу попробовать json, раздражает обработка, поэтому я решил попробовать скретч-файлы.

Мой скретч-файл выглядит так это:

import org.json.JSONObject

val jsonObject = JSONObject(
    """
    {
      "data": [
        ...
      ]
    }
    """
)

println(jsonObject["data"])

Когда я пытаюсь запустить файл, я получаю сообщение об ошибке, утверждающее, что импорт не был успешным:

error: unresolved reference: json (scratch.kts:1:12)
error: unresolved reference: JSONObject (scratch.kts:3:18)
scratch.kts:1:12: error: unresolved reference: json
import org.json.JSONObject
           ^
scratch.kts:3:18: error: unresolved reference: JSONObject
val jsonObject = JSONObject(
                 ^

Process finished with exit code 1

Насколько я понимаю, это потому, что org.json классы теперь являются частью Android, а фреймворк Android недоступен из чистого файла. Но как я могу решить это? Разве я не могу каким-то образом импортировать пакет org.json отдельно от Android framework?

...