当前位置: 首页 > news >正文

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")

4.dagger2无法生成XXDaggerUserComponent

前提:有很多文章都有讲到这个问题如何解决,如果按照步骤修改后还是没有解决问题,那么可以看一下我这个解决方法。

背景:看项目视频学习中,里面引入dagger的版本是2.11,已经确定所有的代码都按照视频里面码出来,但是最后一步就是怎么都不能生成DaggerUserComponent,视频里面是可以的,重复看了两三次视频,都是照着做,但是还是不行。比如Build——》Make Project。不能生成DaggerUserComponent就无法跟着视频继续学下去,只能各种找解决方式。

代码:

4.1模块下build.gradle.kts新增依赖后同步

plugins {……………………id("kotlin-kapt")//新增
}dependencies {…………………………//引入Dagger2(新增)api("com.google.dagger:dagger:2.11")kapt("com.google.dagger:dagger-compiler:2.11")
}

4.2 UserService

class UserService  {
}

4.3 UserModule

@Module
class UserModule {@Providesfun providesUserService(): UserService {return UserService();}
}

4.4 UserComponent 

@Component(modules = [UserModule::class])
interface UserComponent {fun inject(activity: MainActivity)
}

4.5 MainActivity此时是没有生成DaggerUserComponent

class MainActivity : AppCompatActivity() {@Injectlateinit var service: UserServiceoverride fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)
//        DaggerUserComponent.builder().userModule(UserModule()).build()
//            .inject(this)}
}

 解决:将依赖包版本号升级,原先了2.11的,升级到2.48.1后可以生成DaggerUserComponent了

    //引入Dagger2api("com.google.dagger:dagger:2.48.1")kapt("com.google.dagger:dagger-compiler:2.48.1")

待更新中 

相关文章:

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

背景&#xff1a;Android Studio 2022.3.1 1.Unexpected tokens (use ; to separate expressions on the same line) 无法在同一行声明一个变量并实例化。 解决&#xff1a;分开 &#xff08;1&#xff09; var aaCo:Runoob<String>aaCoRunoob("aa") &…...

【LeetCode】708. 循环有序列表的插入

目录 一、题目二、解法完整代码 一、题目 给定循环单调非递减列表中的一个点&#xff0c;写一个函数向这个列表中插入一个新元素 insertVal &#xff0c;使这个列表仍然是循环非降序的。 给定的可以是这个列表中任意一个顶点的指针&#xff0c;并不一定是这个列表中最小元素的…...

2.1.ReactOS源码分析ReadFile函数分解

2.1.ReactOS源码分析ReadFile函数分解 2.1.ReactOS源码分析ReadFile函数分解 文章目录 2.1.ReactOS源码分析ReadFile函数分解ReadFile函数的分析ReadFile函数的声明ReadFile函数的核心代码 ReadFile函数的分析 BOOL WINAPI ReadFile(HANDLE,PVOID,DWORD,PDWORD,LPOVERLAPPED)…...

Gridview配置数据源--信任服务器证书

目录 背景过程Gridview配置数据源GridView与数据源&#xff1a;数据库连接与安全&#xff1a;信任服务器证书&#xff1a;配置信任服务器证书&#xff1a;注意事项&#xff1a; 生成连接字符串程序运行报错问题解决 总结 背景 Gridview配置数据源之后&#xff0c;程序报错 过…...

【Next.js 入门教程系列】08-发送邮件

原文链接 CSDN 的排版/样式可能有问题&#xff0c;去我的博客查看原文系列吧&#xff0c;觉得有用的话&#xff0c; 给我的库点个star&#xff0c;关注一下吧 上一篇【Next.js 入门教程系列】07-身份验证 发送邮件 Setting Up React Email​ React Email 是一个高效便捷的 E…...

Echarts合集更更更之树图

实现效果 写在最后&#x1f352; 源码&#xff0c;关注&#x1f365;苏苏的bug&#xff0c;&#x1f361;苏苏的github&#xff0c;&#x1f36a;苏苏的码云...

线性代数 行列式

一、行列式 1、定义 一个数学概念&#xff0c;主要用于 线性代数中&#xff0c;它是一个可以从方阵&#xff08;即行数和列数相等的矩阵&#xff09;形成的一个标量&#xff08;即一个单一的数值&#xff09; 2、二阶行列式 &#xff0c;像这样将一个式子收缩称为一个 2*2 的…...

Ubuntu 通过 Docker 搭建 GitLab

准备工作 1.&#xff09;更新软件。确保你的系统是最新 sudo apt update sudo apt upgrade -y 2.&#xff09;安装 Docker 和 Docker Compose。 参考&#xff1a;Ubuntu 上安装 Docker-CSDN博客 1. 创建 GitLab 目录 创建一个用于存储 GitLab 数据和配置的目录&#xff1…...

原来CDC数据同步可以这么简单,零代码可视化一键数据同步

当前企业实时同步与分析场景中面临的挑战&#xff1a; 随着业务发展需要&#xff0c;实时分析成为企业目前的强需求&#xff0c;成为支撑企业业务发展的必须项。 一般来说&#xff0c;要满足数据实时分析的诉求&#xff0c;通常有两种方案&#xff1a; 第一种是直接使用源端…...

Ubuntu环境使用 Whisper 与 ZhipuAI 实现本地批量视频转录与文本标点复原(本地亲测可用)

使用 Whisper 与 ZhipuAI 实现批量视频转录与文本标点添加 在本篇博客中&#xff0c;我们将介绍一个实用的项目&#xff0c;帮助初学者了解如何使用 Whisper 和 ZhipuAI 的 API 来进行视频转录和文本处理。这个项目主要功能是将视频转录成文本&#xff0c;并利用大语言模型为转…...

SPI机制

一、SPI简介 SPI&#xff08;Service Provider Interface&#xff09;机制是一种服务发现机制&#xff0c;广泛用于Java生态中。它允许框架或库通过接口解耦具体实现&#xff0c;用户可以在运行时动态地提供接口的实现&#xff0c;而不是在编译时确定。这种机制在很多场景下非…...

生信分析流程:从数据准备到结果解释的完整指南

介绍 生物信息学&#xff08;生信&#xff09;分析是一个复杂的过程&#xff0c;涉及从数据准备到结果解释的多个步骤。随着高通量测序技术的发展和生物数据的迅猛增长&#xff0c;了解和掌握生信分析的标准流程变得尤为重要。这不仅有助于提高分析的准确性&#xff0c;还能优…...

golang语法

参考链接&#xff1a;https://www.runoob.com/go/ 创建变量 // 3种方法 var a int a : 10 // 类型推断 a : make() // 复合类型循环 // 3种循环 for i : 0; i < 10; i {// 循环体} // 传统for循环 for index, num : range nums {// 循环体} // nums是可迭代的复合类型…...

【fisco学习记录2】多群组搭建

说明 文档参考&#xff1a; 多群组部署 — FISCO BCOS 2.0 v2.11.0 文档 (fisco-bcos-documentation.readthedocs.io) 多群组搭建之前&#xff0c;先暂停之前的单群组&#xff0c;并删除&#xff1a; cd fisco bash nodes/127.0.0.1/stop_all.sh rm -rf nodes/ 实现图&…...

深度解读:路由交换、负载均衡与防火墙的网络交响

一、路由交换&#xff1a;网络流动的“大动脉” 1. 路由&#xff1a;决定命运的“路径规划师” 路由技术如同现代交通网络中的导航系统&#xff0c;决定了数据从起点到终点的最佳路径。路由器基于网络层IP地址&#xff0c;对每个数据包进行精确的路径选择&#xff0c;并确保其…...

linux线程 | 线程的控制(二)

前言&#xff1a; 本节内容是线程的控制部分的第二个小节。 主要是列出我们的线程控制部分的几个细节性问题以及我们的线程分离。这些都是需要大量的代码去进行实验的。所以&#xff0c; 准备好接受新知识的友友们请耐心观看。 现在开始我们的学习吧。 ps:本节内容适合了解线程…...

npm install报错一堆sass gyp ERR!

执行npm install &#xff0c;出现一堆gyp含有sass错误的情况下。 解决办法&#xff1a; 首页可能是node版本问题&#xff0c;太高或者太低&#xff0c;也会导致npm install安装错误&#xff08;不会自动生成node_modules文件&#xff09;&#xff0c;本次试验&#xff0c;刚开…...

微知-BlueField DPU在lspci中显示Flash Recovery是什么意思?

效果&#xff1a; lspci |grep BlueField10:00.0 Memory controller: Mellanox Technologies MT42822 Family [BlueField-2 SoC Flash Recovery] (rev 01)*原因&#xff1a; 表示此时flash是empty空的&#xff0c;或者在flash中的FW是无法工作的。比如烧录错误。 这里指的一提…...

【前端知识点】前端笔记

css 引入css文件的文件路径 <!-- 引入外部 CSS 文件 --> <!-- 当前文件所在文件夹目录 --> <link rel"stylesheet" href"./"> <!-- 当前文件所在父文件夹目录 --> <link rel"stylesheet" href"../">j…...

Sping Cache 使用详解

缓存是提升应用性能的常用手段。它通过将耗时的操作结果存储起来&#xff0c;下次请求可以直接从缓存中获取&#xff0c;从而避免重复计算或查询数据库&#xff0c;显著减少响应时间和服务器负载。Spring 框架提供了强大的缓存抽象 Spring Cache&#xff0c;它简化了缓存的使用…...

测试微信模版消息推送

进入“开发接口管理”--“公众平台测试账号”&#xff0c;无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息&#xff1a; 关注测试号&#xff1a;扫二维码关注测试号。 发送模版消息&#xff1a; import requests da…...

synchronized 学习

学习源&#xff1a; https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖&#xff0c;也要考虑性能问题&#xff08;场景&#xff09; 2.常见面试问题&#xff1a; sync出…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中&#xff0c;各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过&#xff0c;在涉及到多个子类派生于基类进行多态模拟的场景下&#xff0c;…...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)

0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述&#xff0c;后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作&#xff0c;其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。

1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj&#xff0c;再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

PostgreSQL——环境搭建

一、Linux # 安装 PostgreSQL 15 仓库 sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-$(rpm -E %{rhel})-x86_64/pgdg-redhat-repo-latest.noarch.rpm# 安装之前先确认是否已经存在PostgreSQL rpm -qa | grep postgres# 如果存在&#xff0…...

如何把工业通信协议转换成http websocket

1.现状 工业通信协议多数工作在边缘设备上&#xff0c;比如&#xff1a;PLC、IOT盒子等。上层业务系统需要根据不同的工业协议做对应开发&#xff0c;当设备上用的是modbus从站时&#xff0c;采集设备数据需要开发modbus主站&#xff1b;当设备上用的是西门子PN协议时&#xf…...

从零手写Java版本的LSM Tree (一):LSM Tree 概述

&#x1f525; 推荐一个高质量的Java LSM Tree开源项目&#xff01; https://github.com/brianxiadong/java-lsm-tree java-lsm-tree 是一个从零实现的Log-Structured Merge Tree&#xff0c;专为高并发写入场景设计。 核心亮点&#xff1a; ⚡ 极致性能&#xff1a;写入速度超…...

【1】跨越技术栈鸿沟:字节跳动开源TRAE AI编程IDE的实战体验

2024年初&#xff0c;人工智能编程工具领域发生了一次静默的变革。当字节跳动宣布退出其TRAE项目&#xff08;一款融合大型语言模型能力的云端AI编程IDE&#xff09;时&#xff0c;技术社区曾短暂叹息。然而这一退场并非终点——通过开源社区的接力&#xff0c;TRAE在WayToAGI等…...

大数据驱动企业决策智能化的路径与实践

&#x1f4dd;个人主页&#x1f339;&#xff1a;慌ZHANG-CSDN博客 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; 一、引言&#xff1a;数据驱动的企业竞争力重构 在这个瞬息万变的商业时代&#xff0c;“快者胜”的竞争逻辑愈发明显。企业如何在复杂环…...