Kotlinc 包含其他 jar 文件
Kotlinc include other jar files
我想 运行 从命令行在 MacOS 上开发一个应用程序。问题是我想在文件中包含 Gson
以将我的数据 类 转换为 json 对象。 (我是 kotlin 命令行的新手)
为了简化,我使用以下内容:
fun main() {
val item = Building(1, "Name", 4, 2)
val jsonBuilding: String = Gson().toJson(item)
}
为了create/run我在命令行中的代码我使用:
>> kotlinc creator.kt -include-runtime -d creator.jar
>> java -jar creator.jar
现在我的问题是如何将 gson.jar
添加到应用程序中才能使用它?
目前,我收到错误消息,因为它无法解析 Gson()
:
creator.kt:37:16: error: unresolved reference: Gson
val gson = Gson()
感谢任何帮助。
您可能使用 Intellj IDEA。当您制作 JVM Gradle 命令行应用程序时,您应该遵循 build.gradle.kts 文件中的代码。
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 任务中您应该找到 Tasks->build->jar 单击它,仅此而已。您的项目文件夹中有您的 jar 文件,build->libs->project.jar.
现在您可以使用以下命令运行将您的 jar 文件作为 java jar 文件:
java -jar your_project_package.jar
exemple
希望对你有所帮助
我想 运行 从命令行在 MacOS 上开发一个应用程序。问题是我想在文件中包含 Gson
以将我的数据 类 转换为 json 对象。 (我是 kotlin 命令行的新手)
为了简化,我使用以下内容:
fun main() {
val item = Building(1, "Name", 4, 2)
val jsonBuilding: String = Gson().toJson(item)
}
为了create/run我在命令行中的代码我使用:
>> kotlinc creator.kt -include-runtime -d creator.jar
>> java -jar creator.jar
现在我的问题是如何将 gson.jar
添加到应用程序中才能使用它?
目前,我收到错误消息,因为它无法解析 Gson()
:
creator.kt:37:16: error: unresolved reference: Gson
val gson = Gson()
感谢任何帮助。
您可能使用 Intellj IDEA。当您制作 JVM Gradle 命令行应用程序时,您应该遵循 build.gradle.kts 文件中的代码。
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 任务中您应该找到 Tasks->build->jar 单击它,仅此而已。您的项目文件夹中有您的 jar 文件,build->libs->project.jar.
现在您可以使用以下命令运行将您的 jar 文件作为 java jar 文件:
java -jar your_project_package.jar
exemple
希望对你有所帮助