Android Studio开发Kotlin项目中遇到的问题解决集

背景:Android Studio 2022.3.1

1. Unexpected tokens (use ';' to separate expressions on the same line)

无法在同一行声明一个变量并实例化。

解决:分开

(1)

var aaCo:Runoob<String>
aaCo=Runoob("aa" )

(2)点击:Join declaration and assignment(加入声明和分配)

结果:var aaCo:Runoob<String> = Runoob("aa" )

这样子不会报错,若是直接这样子打是不成功的

2.SourceSet with name 'main' not found.

在kotlin项目里面单独运行java文件的main方法时出现这个报错

解决:.idea/gradle.xml下新加

<option name ="delegatedBuild" value ="false" />

3.如何依赖模块

Baselibrary(属于library)、UserCenter(属于library)、App(属于application)

App依赖UserCenter、UserCenter依赖Baselibrary

方法一:要用api,否则BaseLibrary里面写的类UserCenter无法使用

api(project(mapOf("path" to ":BaseLibrary")))

api(project(mapOf("path" to ":UserCenter")))

方法二:操作后手动将implementation改成api

选择模块------》右键------》Open Module Setting------》Dependencies------》选择Modules------》加(+)------》3 Module Dependency

注:在Module里面新增的第三方依赖,想要被其它Module使用,使用api方式引入。比如Baselibrary里面新增retrofit依赖,但是UserCenter、App都需要使用,那么也是需要用api方式引入,如下:

api ("com.squareup.retrofit2:retrofit:2.1.0")

待更新中

相关推荐
机智的张尼玛2 小时前
我基于 Kotlin Multiplatform 实现了一套跨平台的弱网离线同步引擎
android·开源·kotlin
我是唐青枫6 小时前
Kotlin 运算符重载详解:为什么 a += b 有时改对象,有时换对象?
开发语言·kotlin
帅次8 小时前
Android 高级工程师面试:Kotlin 语法基础 近1年高频追问 22 题
android·面试·kotlin·扩展函数·空安全
plainGeekDev12 小时前
Gradle 写法 → Kotlin DSL
android·java·kotlin
Android-Flutter1 天前
android compose shadow 阴影 使用
android·kotlin·compose
大狗狗1 天前
AndroidStudio前台服务示例程序
android studio
Android-Flutter2 天前
android compose 自定义Painter绘制图形 使用
android·kotlin·compose
Android-Flutter2 天前
android compose Brush 渐变和着色器 使用
android·kotlin·compose
Flynt2 天前
Room 3.0 包名重构 + KMP 迁移:我把项目升级踩了个遍
android·数据库·kotlin
TechNomad2 天前
Kotlin函数详解与使用示例
android·kotlin