pet*_*ric 5 jvm gradle kotlin build.gradle
我想创建使用一个简单的HelloWorld应用程序kotlin,gradle该gradle这个和application插件.当我使用以下设置运行它时,我收到以下错误:
Error: Main method is not static in class com.petarkolaric.helloworld.Main, please define the main method as:
public static void main(String[] args)
Run Code Online (Sandbox Code Playgroud)
我的build.gradle:
group 'helloworld'
version '1.0-SNAPSHOT'
buildscript {
ext.kotlin_version = '1.2.0'
repositories {
mavenCentral()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
apply plugin: 'kotlin'
apply plugin: 'application'
mainClassName = "com.petarkolaric.helloworld.Main"
repositories {
mavenCentral()
}
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
}
compileKotlin {
kotlinOptions.jvmTarget = "1.8"
}
compileTestKotlin {
kotlinOptions.jvmTarget = "1.8"
}
Run Code Online (Sandbox Code Playgroud)
我的src/main/kotlin/com/petarkolaric/helloworld/Main.kt:
package com.petarkolaric.helloworld
class Main {
fun main(args : Array<String>) {
println("Hello, World!")
}
}
Run Code Online (Sandbox Code Playgroud)
根据这篇博文,我应该能够以这种方式使用应用程序插件.
我需要更改以允许application插件在运行时运行我的主函数gradle run?
gue*_*ter 13
正如错误所说,您的主要方法不是静态的.您有以下选择:
1)将主体放入companion object并制作JvmStatic
class Main {
companion object {
@JvmStatic
fun main(args : Array<String>) {
println("Hello, World!")
}
}
}
Run Code Online (Sandbox Code Playgroud)
2)改变你class的object- 比你或多或少有一个单身人士class并且做到了JvmStatic
object Main {
@JvmStatic
fun main(args : Array<String>) {
println("Hello, World!")
}
}
Run Code Online (Sandbox Code Playgroud)
3)将主要课程放在课堂外
fun main(args : Array<String>) {
println("Hello, World!")
}
class Main {
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2973 次 |
| 最近记录: |