java调用kotlin代码编译报错“找不到符号”的问题

简介: java调用kotlin代码编译报错“找不到符号”的问题

项目拉下来编译提示找不到符号,截图如下:

其中LogRecordUtils这个类是用kotlin写的,在java中调用,尝试了各种方法,像Clean Project、Rebuild Project、Invalidate Caches这些都试过了,问题依然没解决,包括gradle版本也更换到高版本,问题依旧。

最后在检查kotlin配置的时候,发现module下的build.gradle中没有使用kotlin插件,就是下面这行代码:

需要在项目根目录build.gradle 加入

id 'org.jetbrains.kotlin.android' version '1.8.20' apply false

 

在module的build.gradle中加入

id 'org.jetbrains.kotlin.android'

implementation 'androidx.core:core-ktx:+'

 

一般在java项目中初次使用kotlin,会提示让你去配置,也有快捷按钮,点击即可自动配置,但module下的配置需要自己手动去加上。

至此,加上这行代码后再次编译问题就解决了,特此记录一下。

目录
相关文章
|
1天前
|
存储 Java 调度
Java多线程基础-11:工厂模式及代码案例之线程池(二)
这篇内容介绍了Java多线程基础,特别是线程池中的定时器和拒绝策略。
14 0
|
1天前
|
设计模式 监控 Java
Java多线程基础-11:工厂模式及代码案例之线程池(一)
本文介绍了Java并发框架中的线程池工具,特别是`java.util.concurrent`包中的`Executors`和`ThreadPoolExecutor`类。线程池通过预先创建并管理一组线程,可以提高多线程任务的效率和响应速度,减少线程创建和销毁的开销。
19 2
|
1天前
|
Java 调度
Java多线程基础-10:代码案例之定时器(二)
Java 多线程基础中,定时器(Timer)的实现通常使用 `PriorityBlockingQueue` 和 `wait/notify` 机制来管理任务。
9 0
|
1天前
|
安全 Java
Java多线程基础-10:代码案例之定时器(一)
`Timer` 是 Java 中的一个定时器类,用于在指定延迟后执行指定的任务。它常用于实现定时任务,例如在网络通信中设置超时或定期清理数据。`Timer` 的核心方法是 `schedule()`,它可以安排任务在延迟一段时间后执行。`
16 1
|
1天前
|
存储 安全 Java
Java多线程基础-9:代码案例之阻塞队列(二)
Java多线程基础教程系列中,介绍了如何实现一个简单的阻塞队列(非泛型版本)。
12 0
|
1天前
|
消息中间件 存储 负载均衡
Java多线程基础-9:代码案例之阻塞队列(一)
阻塞队列是一种遵循先进先出原则的线程安全数据结构,它在队列满时会阻塞入队操作,队列空时会阻塞出队操作,常用于多线程间的协作,简化同步代码编写。Java中提供了`BlockingQueue`接口及其实现类,如`ArrayBlockingQueue`和`LinkedBlockingQueue`,用于实现生产者-消费者模型,以实现负载均衡和资源的有效利用,如削峰填谷,降低系统压力。
16 0
|
3天前
|
SQL 分布式计算 Java
HiveOnSpark 报错:java.lang.IllegalStateException(Connection to remote Spark driver was lost)‘ Last kno
Hive On Spark 测试时遇到`java.lang.IllegalStateException`和`FileNotFoundException`,问题根源是 Spark 缺少 `hive-exec-3.1.3.jar`。解决方法:从 `$HIVE_HOME/lib/`复制该 jar 到 `$SPARK_HOME/jars/`,并使用 `hdfs dfs -put`命令将其上传至 HDFS 的 `/spark-jars/`(根据实际情况调整路径)。重启 Hive 元数据服务后问题解决。
HiveOnSpark 报错:java.lang.IllegalStateException(Connection to remote Spark driver was lost)‘ Last kno
|
1天前
|
移动开发 调度 Android开发
构建高效Android应用:Kotlin协程的全面指南
【5月更文挑战第28天】 在移动开发领域,性能优化和资源管理是持续的挑战。随着现代应用程序变得越来越复杂,传统的异步处理方式如回调地狱(Callback Hell)和RxJava已不能完全满足开发者的需求。本文将深入探讨Kotlin协程——一种在Android平台上实现轻量级线程管理的先进技术。我们将剖析协程的核心原理,展示如何利用Kotlin协程简化异步代码,并提高Android应用的性能及响应性。通过实际案例分析与最佳实践分享,帮助开发者掌握协程在日常开发中的应用,打造更加流畅且高效的用户体验。
|
1天前
|
移动开发 调度 Android开发
构建高效Android应用:探究Kotlin协程的优势
【5月更文挑战第28天】在移动开发领域,性能优化和资源管理是持续的挑战。为了应对这些挑战,Android开发者转向了多种解决方案,其中Kotlin协程作为一种新兴的异步编程范式,正逐渐受到关注。本文将深入探讨Kotlin协程如何改善Android应用的性能、提高代码可读性以及简化异步逻辑,同时通过实例演示其在实际应用中的实现方式。
|
1天前
|
移动开发 安全 编译器
构建高效Android应用:探究Kotlin协程的优势与实践
【5月更文挑战第27天】 在移动开发领域,性能优化和流畅的用户体验始终是开发者追求的目标。随着Android对Kotlin的支持日益增强,Kotlin协程作为一种新的并发处理方式,为Android应用的性能提升提供了新的可能性。本文将深入探讨Kotlin协程的核心优势,并通过具体实例展示如何在Android应用中有效利用协程来提升响应速度、减少内存消耗,并简化异步代码。