从gradle任务运行kotlin应用程序的正确方法
我有简单的脚本从gradle任务运行kotlin应用程序的正确方法,gradle,kotlin,Gradle,Kotlin,我有简单的脚本 package com.lapots.game.journey.ims.example fun main(args: Array<String>) { println("Hello, world!") } 但当我试图运行taskgradlerunexample时,我得到了一个错误 错误:无法找到或加载主类com.lapots.game.journey.ims.example.example 运行应用程序的正确方法是什么?感谢@JaysonMinard提供
package com.lapots.game.journey.ims.example
fun main(args: Array<String>) {
println("Hello, world!")
}
但当我试图运行taskgradlerunexample
时,我得到了一个错误
错误:无法找到或加载主类com.lapots.game.journey.ims.example.example
运行应用程序的正确方法是什么?感谢@JaysonMinard提供的链接
那main
@file:JvmName("Example")
package com.lapots.game.journey.ims.example
fun main(args: Array<String>) {
print("executable!")
}
玩了这个把戏你也可以使用
gradle
应用程序插件
// example.kt
package com.lapots.game.journey.ims.example
fun main(args: Array<String>) {
print("executable!")
}
然后按如下方式运行应用程序
./gradlew run
如果您使用的是Kotlin构建文件
build.gradle.kts
,则需要执行以下操作
apply {
plugin("kotlin")
plugin("application")
}
configure<ApplicationPluginConvention> {
mainClassName = "my.cool.App"
}
有关详细信息,请参见我从@lapots答案中找到了另一种方法 在您的
示例.kt
中:
@文件:JvmName(“示例”)
打包您的.organization.example
趣味主线(字符串:数组){
println(“耶!我跑了!”)
}
然后在build.gradle.kts
中:
插件{
kotlin(“jvm”)版本“1.3.72”
应用
}
应用{
mainClassName=“您的.organization.example.example”
}
用于build.gradle.kts
用户
主文件:
package com.foo.game.journey.ims.example
fun main(args: Array<String>) {
println("Hello, world!")
}
有一个关于使用Gradle应用程序插件运行Kotlin应用程序的部分:。。。或者,您是否需要将其作为一项任务以其他方式运行?但是这个答案也可以给你你需要的线索。对于和我有同样愚蠢问题的人:应该是apply plugin:“application”
(注意这里的:
),答案中似乎没有冒号。谢谢你的帖子,非常有用:)配置很好而且干净:)有没有一种方法可以获取android应用程序插件应用程序的runtimeClasspath?
./gradlew run
apply {
plugin("kotlin")
plugin("application")
}
configure<ApplicationPluginConvention> {
mainClassName = "my.cool.App"
}
plugins {
application
}
application {
mainClassName = "my.cool.App"
}
package com.foo.game.journey.ims.example
fun main(args: Array<String>) {
println("Hello, world!")
}
plugins {
application
kotlin("jvm") version "1.3.72" // <-- your kotlin version here
}
application {
mainClassName = "com.lapots.game.journey.ims.example.ExampleKt"
}
...
./gradlew run