这是程序
data class Resultado (val resultado: Int, val tesoro: Boolean)
fun main() {
val busca = fun(intento: Int): Resultado
{
val cosas = listOf( 3, 33, 333, 42, 1, 1, 111 )
if ( intento == 4 ) {
return Resultado( 42, true )
} else {
return Resultado( cosas[intento], false )
}
}
val (valor1, premio1) = busca( 2 )
println( "2 devuelve " + valor1 + " y tiene premio " + premio1 )
val (valor2, premio2) = busca( 4 )
println( "4 devuelve " + valor2 + " y tiene premio " + premio2 )
}
直接compiles正确地使用{p>
kotlinc code/tesoro.kt -include-runtime -d tesoro.jar
将所有类型的文件保留在目录中
ls *.class *.jar
Resultado.class tesoro.jar TesoroKt.class TesoroKt$main$busca$1.class
但是,它无法运行
java -jar tesoro.jar
no hay ningún atributo de manifiesto principal en tesoro.jar
如上所述,“几乎没有主要清单属性”的含义几乎相同。这是
java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)
科特林版本为1.1.3-2
程序是否缺少某些内容?
答案 0 :(得分:1)
请确保使用最新的稳定版本。使用kotlinc 1.3.31,它可以正确运行,也可以使用fun main()
。
答案 1 :(得分:0)
函数def sal_of_seawater(l):
sal_of_seawater = (-0.0222*l)+34
print("A latitude of", l, "equals a salinity value of", sal_of_seawater)
sal_of_seawater(45)
的定义中存在错误,导致版本1.1.3中出现此错误。应该是:
main
如果没有,它将产生LTA错误,因此即使您不使用参数也需要将其包括在内。