You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在未使用Maven/Gradle的IntelliJ JavaFX项目中集成Kotlinx Coroutines

手动给JavaFX项目添加Kotlinx Coroutines库(无需构建工具)

没问题,我来一步步教你怎么弄——既然你没用到Maven或Gradle,咱们就用最直接的手动添加jar包的方式搞定Kotlinx协程:

首先得明确你需要几个核心的jar包:

  • Kotlin标准库(如果你的项目还没启用Kotlin支持的话,这个是必须的)
  • Kotlinx Coroutines核心库
  • Kotlinx Coroutines JavaFX适配库(专门用来和JavaFX的UI线程配合,避免更新UI时的线程问题)

步骤1:下载所需的jar包

你需要去Maven Central仓库下载这几个jar(直接搜文件名就能找到):

  1. kotlin-stdlib-[版本号].jar(比如选最新稳定版,比如1.9.20,对应jar就是kotlin-stdlib-1.9.20.jar)
  2. kotlinx-coroutines-core-[版本号].jar(版本最好和Kotlin标准库匹配,比如1.7.3)
  3. kotlinx-coroutines-javafx-[版本号].jar(版本和core库保持一致即可)

下载的时候选纯jar格式的文件,带sources或javadoc的是文档包,可选下载,核心是主jar文件。

步骤2:在IntelliJ中添加jar到项目依赖

  1. 打开你的IntelliJ项目,点击顶部菜单栏的 File -> Project Structure(快捷键是Ctrl+Alt+Shift+S)
  2. 在弹出的窗口左侧,选择 Libraries
  3. 点击窗口上方的 + 号,选择 Java 选项
  4. 找到你刚才下载的三个jar文件,选中它们,然后点击 OK
  5. 接下来会提示你把这些库添加到哪个模块,选择你的JavaFX项目模块,点击 OK
  6. 最后点击Project Structure窗口的 Apply 和 OK 保存设置

步骤3:(可选)给项目启用Kotlin支持

如果你的项目之前只写Java,还没配置Kotlin:

  1. 同样打开 Project Structure -> Modules
  2. 选中你的项目模块,点击右侧的 + 号,选择 Kotlin
  3. 选择和你下载的kotlin-stdlib一致的版本,点击 OK 保存

测试配置是否成功

写个简单的JavaFX代码试试协程:

import javafx.application.Application
import javafx.scene.Scene
import javafx.scene.control.Label
import javafx.scene.layout.StackPane
import javafx.stage.Stage
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.GlobalScope
import kotlinx.coroutines.launch
import kotlinx.coroutines.javafx.JavaFx

class CoroutineTest : Application() {
    override fun start(primaryStage: Stage) {
        val label = Label("等待更新...")
        val root = StackPane(label)
        primaryStage.scene = Scene(root, 300, 200)
        primaryStage.show()

        // 用协程在后台执行任务,然后切换到JavaFX主线程更新UI
        GlobalScope.launch(Dispatchers.IO) {
            // 模拟耗时操作
            Thread.sleep(2000)
            // 切换到JavaFX主线程更新UI
            launch(Dispatchers.JavaFx) {
                label.text = "协程任务完成!"
            }
        }
    }
}

fun main() {
    Application.launch(CoroutineTest::class.java)
}

运行这个类,如果能正常显示窗口,2秒后标签文字更新,就说明配置成功了。


内容的提问来源于stack exchange,提问作者Punika

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:40:43