繁体   English   中英

如何在代码中使用JAR? 在Android Studio上很容易,但它在IntelliJ IDEA中不起作用

[英]How to use JAR in code? Easy at Android Studio but it doesn't work in IntelliJ IDEA

Android Studio我创建了一个虚拟项目来测试Klaxon包,它处理JSON 所以我把下面的代码放在onCreate里面做了更改creatorButton按钮的文本。

class Product(val name: String)  // Kotlin, but could be Java
val product = Product("HDD")
val result = Klaxon().toJsonString(product)   
creatorButton.text = result 

Klaxonjcenter存储库中。 所以在Build.Gradle模块文件中,我添加了dependency组:

implementation 'com.beust:klaxon:5.0.1'

当我在Android手机中运行应用程序时,按钮会显示标签

{"Name":"HDD"}

之后,我想在IntelliJ IDEA上深入测试Klaxon ,所以我不需要模拟或在手机上运行我想要测试的东西。

所以我用Gradle创建了一个空的Kotlin项目。

fun main() {
    class Product(val name: String)
    val product = Product("HDD")
    val result = Klaxon().toJsonString(product)  // Error
    println(result)
}

我按照这个问题中的提示并在项目结构中添加JAR库(它不起作用)或在libs文件夹中添加JAR库并运行“Add as Library”(它也不起作用)

PS:我曾尝试在Gradle.build编辑依赖Gradle.build ,但它不接受相同的Android Studio语法。

我怎么能解决这个问题呢? 无论我做什么,它总是在Klaxon call()线上出错

我发现了一个不同的把戏,因为没有尝试编辑GradleIntelliJ IDEA使用萨姆斯命令我在做Android Studio已经内部工作dependencies组:我尝试使用implementationjcenter字符串, filesfiletree命令(说明文档

首先,我用Gradle关闭了Kotlin项目。

然后我创建了一个没有包含Gradle的新Kotlin项目(这是最重要的一步),复制所有源代码并以与stackoverflow问题中提出的相同方式添加JAR文件。

所以,我检查,如果在File / Settings/ Editor / General / Auto Import ,选项Insert Import on Pasteall ,并Add unambiguous import on the flyon

最后,当我使用Klaxon()函数时, Intellij IDEA询问缺少的导入,我已经用Alt+Enter确认了。

并且源代码接收该行

import com.beust.klaxon.Klaxon

现在我的Kotlin代码就像一个魅力

顺便说一句,如果在项目树(左侧)中看到External Library ,则一个子节点是klaxon.5.0.5.jar ,这是我的库。 它派生于com.beust.klaxon对类名称的开放。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM