在 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
Klaxon
在 jcenter
存储库。所以在 Build.Gradle
模块文件,我已添加到 dependency
团体:implementation 'com.beust:klaxon:5.0.1'
当我在我的 Android 手机中运行该应用程序时,按钮显示标签
{"Name":"HDD"}
之后,我想测试
Klaxon
深入了解 IntelliJ IDEA
所以我不需要一直在手机上模拟或运行我想要测试的东西。所以我创建了一个空的
Kotlin
与 Gradle
合作的项目.fun main() {
class Product(val name: String)
val product = Product("HDD")
val result = Klaxon().toJsonString(product) // Error
println(result)
}
我按照 this question 中的提示进行操作并添加
JAR
项目结构中的库(它不起作用)或在 libs
中添加 JAR 库文件夹并运行“添加为库”(它也不起作用)PS:我尝试编辑
Gradle.build
中的依赖项,但它不接受相同的 Android Studio 语法。我该如何解决这个谜团?
无论我做什么,它总是在
Klaxon
的行上给出错误称呼()
最佳答案
我发现了一个不同的技巧,因为没有尝试编辑 Gradle
在 IntelliJ IDEA
使用与 Android Studio
中相同的命令曾在 dependencies
内部工作过组:我尝试使用implementation
与 jcenter
字符串,带有 files
或 filetree
命令(如 documentation 中所述)
首先,我关闭了 Kotlin
与 Gradle
合作的项目.
然后我创建了一个新的 Kotlin
不包含的项目Gradle
(这是最重要的一步),复制所有源代码并按照 stackoverflow 中建议的方式添加 JAR 文件问题。
所以我检查是否在 File / Settings/ Editor / General / Auto Import
, 选项 Insert Import on Paste
是 all
, 和 Add unambiguous import on the fly
是 on
.
最后当我使用函数 Klaxon()
, Intellij IDEA
询问缺少的导入,我已通过 Alt+Enter
确认.
并且源代码接收到这一行
import com.beust.klaxon.Klaxon
现在我的 Kotlin 代码就像一个魅力
顺便说一句,如果有人看到
External Library
在项目树(左侧)中,一个子节点是klaxon.5.0.5.jar
那是我的图书馆。它派生为 com.beust.klaxon
对类名开放。
关于android - 如何在代码中使用 JAR?在 Android Studio 中很容易,但在 IntelliJ IDEA 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56452640/