首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kotlinc包括其他jar文件

Kotlinc包括其他jar文件
EN

Stack Overflow用户
提问于 2020-11-23 22:06:56
回答 1查看 333关注 0票数 0

我想从MacOS上的命令行运行一个应用程序。问题是,我希望在文件中包含Gson,以便将数据类转换为json对象。(我刚开始使用kotlin命令行)

为了简化,我使用以下方法:

代码语言:javascript
复制
fun main() {
    val item = Building(1, "Name", 4, 2)

    val jsonBuilding: String = Gson().toJson(item)
}

若要在命令行中创建/运行我的代码,请使用:

代码语言:javascript
复制
>> kotlinc creator.kt -include-runtime -d creator.jar

>> java -jar creator.jar

现在我的问题是,如何将gson.jar包含进来以便能够将其应用到应用程序中?

当前,我收到错误,因为它不能解析Gson()

代码语言:javascript
复制
creator.kt:37:16: error: unresolved reference: Gson
   val gson = Gson()

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-23 22:50:15

您可能会使用Intellj的想法。当您制作一个JVM命令行应用程序时,您应该在build.gradle.kts文件上加上下面的代码。

代码语言:javascript
复制
tasks.withType<Jar> {
manifest {
    attributes["Main-Class"] = "com.your_project_package.MainKt"
}
// To add all of the dependencies
from(sourceSets.main.get().output)

dependsOn(configurations.runtimeClasspath)
from({
    configurations.runtimeClasspath.get().filter { it.name.endsWith("jar") }.map { zipTree(it) }
})
}

然后构建您的项目,从gradle任务中您应该找到任务-> build ->jar,单击它,就这样了。项目文件夹中有jar文件,build->libs->project.jar。

现在,您可以使用以下命令以java文件的形式运行jar文件:

代码语言:javascript
复制
java -jar your_project_package.jar

我希望这对你有帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64977227

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档