相关疑难解决方法(0)

如何在Kotlin中运行已编译的类文件?

Jetbrains提供了一些文档,但我找不到如何运行Kotlin的编译类文件.

hello.kt:

fun main(args : Array<String>) {
  println("Hello, world!")
}
Run Code Online (Sandbox Code Playgroud)

编译:

$ kotlinc -out dist -src hello.kt
$ ls dist
namespace.class
$ java dist/namespace
Exception in thread "main" java.lang.NoClassDefFoundError: dist/namespace (wrong name: namespace)
$ java -jar /usr/local/kotlin/lib/kotlin-runtime.jar
Failed to load Main-Class manifest attribute from
/usr/local/kotlin/lib/kotlin-runtime.jar 
Run Code Online (Sandbox Code Playgroud)

如何运行Kotlin程序?

kotlin

24
推荐指数
2
解决办法
1万
查看次数

Kotlin - IntelliJ项目设置

我想使用IntelliJ IDE为KVM创建一个用于JVM的新项目,但我无法获得配置以使其工作.我试图按照这个教程,在那之后不起作用("运行'_DefaultPackage'"选项从未出现过),我开始试图直觉应该做的事情没有成功.到目前为止发生的事情(反复):

  • 我创建了一个新项目,选择"Kotlin - JVM"作为项目类型.
  • 我在第二页上单击了Kotlin Runtime的"Create ..."按钮,然后选择"Copy to:lib".
  • 我单击"完成",创建的项目有一个与我的项目同名的模块.没有默认的源文件或任何配置.
  • 我创建了一个名为"app.kt"的Kotlin文件(我也尝试了其他名称,如"Main.kt"),并将以下源代码放入:
fun main(args: Array<String>){
    println("Hello world!")
}
Run Code Online (Sandbox Code Playgroud)
  • 我右键单击代码编辑器和左窗格中的文件,找到教程中提到的"运行'_DefaultPackage'"选项,但未能在其中找到它.
  • 我创建了一个新的Kotlin配置,要求我输入"Main class".看到这个,我将代码更改为:
public class Main {
    fun main(args: Array<String>) {
        println("Hello world!")
    }
}
Run Code Online (Sandbox Code Playgroud)
  • 我编辑我的配置并将主类设置为"Main",然后运行配置.它失败并显示以下错误:"运行错误:在'Main'类中找不到函数'main'.

我错过了什么?

intellij-idea kotlin

23
推荐指数
4
解决办法
2万
查看次数

main和regular函数有什么区别?

Kotlin允许我创建两个main()函数.但是不允许两个myfun()函数.

  • main()有什么特别之处?还有其他特殊功能吗?
  • 我可以在同一个包中创建两个静态myfun()函数吗?我希望他们有像main这样的文件范围.

Test1.kt:

package start

fun main(args: Array<String>) {
}

fun myfun(args: Array<String>) {
}
Run Code Online (Sandbox Code Playgroud)

Test2.kt:

package start
// OK!
fun main(args: Array<String>) {
}
// Error! Conflicting overloads
fun myfun(args: Array<String>) {
}
Run Code Online (Sandbox Code Playgroud)

kotlin

12
推荐指数
3
解决办法
952
查看次数

Kotlin中的公共静态无效主体

在中Java,尤其是在中Android studio,每次我想要快速运行或测试某些Java源代码时,我都会创建public static void main(快捷键:)psvm + tab,并且IDE将显示“播放”按钮以立即运行它。

在此处输入图片说明

我们是否有某种psvmKotlin-为了运行或测试任何快速的进入点什么?尝试过使用此功能,但无法正常工作。(甚至尝试使用@JvmStatic)。我们可以在中配置Android studio吗?

fun main(args: Array<String>) {

}
Run Code Online (Sandbox Code Playgroud)

java android kotlin android-studio

7
推荐指数
2
解决办法
2521
查看次数

kotlin 程序错误:jar 文件中没有主清单属性

我写了一个简单的 kotlin helloworld 程序 hello.kt

fun main(args: Array<String>) {
    println("Hello, World!")
}
Run Code Online (Sandbox Code Playgroud)

然后我用kotlinc编译

$kotlinc hello.kt -include-runtime -d hello.jar
Run Code Online (Sandbox Code Playgroud)

没有错误并且生成了 hello.jar。当我运行它时

$java -jar hello.jar
Run Code Online (Sandbox Code Playgroud)

它说 hello.jar 中没有主要清单属性

$no main manifest attribute, in hello.jar
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚这个问题。我的 kotlin 版本是 1.3.40,JDK 版本是 1.8.0

kotlin

3
推荐指数
2
解决办法
2797
查看次数

标签 统计

kotlin ×5

android ×1

android-studio ×1

intellij-idea ×1

java ×1