2016-02-26 4 views
0

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

import java.io.File 
import java.util.* 
import kotlin.io.* 

class MyClass { 
    fun run() { 
     val result = html { 
      head { 
       title { +"Entry page" } 
      } 
      body { 
       h1 { 
        +"Map" 
       } 
       +"Some HTML code" 
      } 
     } 
     File("target/wdef/index.html").writeText(result) 
    } 
} 

Я получаю ошибки - writeText(result) выделяется красным цветом, и я получаю сообщение об ошибке Error:(26, 40) Kotlin: Unresolved reference: writeText ,

Как это исправить?

+0

Похож на проблему с конфигурацией build \ project. Можете ли вы построить его из CLI? Пожалуйста, ответьте здесь – voddan

ответ

3

Проблема может заключаться в том, что вы передаете неправильный тип writeText. Он требует String, но вы передаете html объект здания HTML. Попробуйте конвертировать его с помощью toString:

File("target/wdef/index.html").writeText(result.toString()) 
+0

Спасибо, но в 'Файл (« target/wdef/index.html »). WriteText (result.toString())' 'часть' writeText' также выделена красным цветом. –

+0

Вы уверены, что весь проект разрешен? Там должно быть больше включает imo. – voddan

+1

Я установил обновление и теперь он работает. Благодарю. –

Смежные вопросы