Docker端口不受ufw防火墙限制解决方案安装docker“iptables”:false,禁用docker管理iptables规则。default-address-pools限制docker使用的网络。(后面转发须用到)mkdir-p/etc/dockercat>/etc/docker/daemon.json<
ORACLE 正确删除归档日志的方法
俗尘某某
程序员记录oracle归档日志
ORACLE正确删除归档日志的方法我们都知道在controlfile中记录着每一个archivelog文件的相关信息,当然们在OS下把这些物理文件delete掉后,在我们的controlfile中仍然记录着这些archivelog文件的相关信息,在oracle的OEM管理器中有可视化的日志展现出,当我们手工清除archive目录下的文件后,这些记录并没有被我们从controlfile中清除掉,也就
springboot+websocket+微信小程序(实现后端主动推送消息 小程序的实时报警功能)
Listitem本项目主要实现的需求为:主要功能汽车在行驶的过程中如果前方遇到限高杆,车前的摄像头在安全距离前测出限高杆的高度后,小程序能够实时报警(当前车辆内否安全通过)。次要功能1.车主利用微信用户名登录后能够绑定车牌,实现车牌的增删改查2.车主可以为自己的车牌号添加家庭成员(绑定微信用户名的方式)3.简单权限管理(车主拥有其名下车牌的增删改查权限,家庭成员则没有)实现方式1.后端使用spri
UE4官方文档阅读笔记——蓝图可视化编程
毛甘木
UE4ue4
UE4蓝图官方文档阅读笔记蓝图中的结构体变量拆分结构体Break组成结构体Make修改结构体中个别成员SetMemberinStruct自定义结构体内容浏览器-创建高级资源-蓝图-结构体蓝图数组Add添加元素到末尾ClearContainsFilterArrayFindGetInsertLastLengthRemoveRemoveIndexResizeSetArrayElem<
《UE5_C++多人TPS完整教程》学习笔记40 ——《P41 装备(武器)姿势(Equipped Pose)》
SHOTJEE
#ue5游戏c++
本文为B站系列教学视频《UE5_C++多人TPS完整教程》——《P41装备(武器)姿势(EquippedPose)》的学习笔记,该系列教学视频为计算机工程师、程序员、游戏开发者、作家(Engineer,Programmer,GameDeveloper,Author)StephenUlibarri发布在Udemy上的课程《UnrealEngine5C++MultiplayerShooter》的中文字
Python的内存管理
星辰灬
Pythonpythonpycharm
Python的内存管理在Python中,内存管理涉及到一个包含所有Python对象和数据结构的私有堆(heap)。这个私有堆的管理由内部的Python内存管理器(Pythonmemorymanager)保证。Python内存管理器有不同的组件来处理各种动态存储管理方面的问题,如共享、分割、预分配或缓存。内存管理机制动态内存分配:Python使用动态内存分配,这意味着它在运行时动态分配和管理内存,而
鸿蒙NEXT开发之App相关工具类AppUtil
全栈陈序员
HarmonyNEXT开发华为huawei鸿蒙系统harmonyosArkTs
importbundleManagerfrom'@ohos.bundle.bundleManager';import{KeyboardAvoidMode,window}from'@kit.ArkUI';import{common,ConfigurationConstant}from'@kit.AbilityKit';/***App相关工具类(使用该工具前请在UIAbility的onWindowSt
Oracle ORA-3137[12333] 关闭的连接 java.sql.SQLRecoverableException: 无法从套接字读取更多的数据 ...
iteye_9244
ORALCEoraclesql
今天在项目中遇到一个异常:OracleORA-3137[12333]关闭的链接java.sql.SQLRecoverableException:无法从套接字读取更多的数据,后来我在网上找了一下解决方案发现有两个:第一个解决方案:换oracle驱动,把驱动版本换成11.2的,但是尝试了一下没有效果,所以使用了第二个解决方案:在PLSQL执行altersystemset"_optim_peek_use
Vue3.3 + TypeScript ,自主打造媲美 ElementPlus 的组件库之学习笔记
怪我冷i
大前端typescript学习笔记
Vue3.3+TS4,自主打造媲美ElementPlus的组件库第1章课程介绍1-1课程导学1-2代码库使用注意事项1-3项目演示地址:http://element.vikingship.xyz/第2章Typescript基础知识2-1什么是Typescript为什么要学习它2-2安装Typescript2-3原始数据类型和Any类型2-4数组和元组2-5Interface-接口初探2-6函数2-
WSL快速在Ubuntu或者Debian安装golang、python、deno、nodejs、java前后端全栈一体化开发环境配置
怪我冷i
云原生ubuntudebiangolangAI写作AI编程
安装golang#移除旧版本(如有)sudoaptremove--autoremove-ygolang#下载最新版(替换为官网最新版本号)wgethttps://go.dev/dl/go1.24.4.linux-amd64.tar.gz#解压到/usr/localsudorm-rf/usr/local/gosudotar-C/usr/local-xzfgo1.24.4.linux-amd64.ta
Git安装前的准备工作及避坑指南
zzywxc787
开发语言人工智能大数据
一、安装前的准备工作检查系统环境Windows:建议使用Windows10/11,64位系统。macOS:确保系统版本≥10.15(Catalina)。Linux:推荐Ubuntu20.04+、Debian10+或CentOS7+。卸载旧版本安装前删除旧版Git:bash#Linux/macOSsudoapt-getremovegit#Debian/Ubuntusudoyumremovegit#C
Arduino DS18B20编译错误解决方法
木子欢儿
DS18B20.cpp:Inmemberfunction'uint8_tDS18B20::getResolution()':DS18B20.cpp:101:1:error:controlreachesendofnon-voidfunction[-Werror=return-type]101|}|^cc1plus.exe:somewarningsbeingtreatedaserrorsexitsta
与客服关于博文收益的对话记录
brooknew
平台规则
我的聊天记录我2025-07-0210:00:58使用qemu运行Linux5.10.168原创高质量VIP文章2025-07-0116:34:49240317016Linux内核GPIO子系统gpioio原创高质量2025-06-1915:57:0239683716111揭秘devres接口:功能深入介原创高质量VIP文章2025-06-1809:05:537070614014我的好几篇博客阅读
基于HTML的悬窗可拖动记事本
孤水寒月
htmlcss前端
基于HTML的悬窗可拖动记事本这款记事本全部使用HTML+CSS+JS实现,可以在浏览器中实现悬浮可拖动的记事本,所有内容存储在浏览器中,清除缓存后将会丢失记事本内容效果展示实现代码Note+×保存删除//拖动逻辑constdraggableWindow=document.getElementById('draggableWindowNote');constdragHeader=doc
4,STM32CubeMX配置UART串口工程
1,前言单片机型号:STM32F407编程环境:STM32CubeMX+Keilv5硬件连接:PF9--->LED0,PF10--->LED1注:本工程在1,STM32CubeMX工程基础(配置Debug、时钟树)基础上完成。2,STM32CubeMX配置UART串口在Connectivity(1)中选择USART1(2)进行配置串口1,在Mode中下拉选择异步通信方式Asynchronous(3
【大模型学习 | BLIP2原理】
九年义务漏网鲨鱼
人工智能深度学习语言模型多模态大模型
BLIP-2:BootstrappingLanguage-ImagePre-trainingwithFrozenImageEncodersandLargeLanguageModels目前(2023)的图文模型都是基于端到端训练方式,大规模的模型和数据集导致了在预训练过程需要的大量计算。作者提出一种从离线、梯度冻结的图像、语言模型中提升图文的预训练模型。为了联系两个不同模态预训练模型,作者提出一种使
使用vue-template-loader将模板编译成渲染函数的Webpack配置技巧
前端布洛芬
大白话前端八股vue.jswebpack前端
大白话使用vue-template-loader将模板编译成渲染函数的Webpack配置技巧引言:被模板编译逼疯的周三下午你是否也经历过这样的场景:deadline前的周三下午,咖啡因已经失效,屏幕上却跳出Templatecompilationfailed的红色报错。Vue单文件组件(SFC)的.vue格式用腻了,想试试把模板抽成单独的.html文件,结果webpack配置直接给你脸色看。作为每天
ZYNQ MPSOC PL端DDR4读写--介绍(1)
LEEE@FPGA
FPGA高速接口开发fpga开发DDR4
1DDR4介绍DDR4SDRAM(Double-Data-RateFourthGenerationSynchronousDynamicRandomAccessMemory,简称为DDR4SDRAM),是一种高速动态随机存取存储器,它属于SDRAM家族的存储器产品,提供了相较于DDR3SDRAM更高的运行性能与更低的电压,并被广泛的应用于计算机的运行缓存。DDR4主要特点1)更高频率与带宽起步频率为
Codeforces Round 1034 (Div. 3) G解题思路
拉长时间线
数据结构与算法算法数据结构c++
链接Problem-G-Codeforces题目大意给定n,m,q分别为数组大小,数组的每个数非负且小于m,要进行q次操作操作分为两种:1.令a[i]=x(永久性)2.输入一个k,对于每个a[i]都可进行任意次操作a[i]=(a[i]+k)%m,对数组进行操作,判断能否增厚变成一个非严格递增数组题目思路对样例进行分析可以发现对于每个a[i]可以分为g=gcd(m,k)类,可以为每一类标号,号码为a
探索Gemini Balance:Google Gemini API的代理与负载均衡解决方案
几道之旅
人工智能智能体及数字员工负载均衡运维人工智能
引言在人工智能领域,API的高效使用和管理至关重要。尤其是当涉及到Google的GeminiAPI时,为了实现更稳定、更高效的服务,我们需要一个强大的代理和负载均衡工具。今天,我们就来深入了解一下GeminiBalance这个开源项目,它为GeminiAPI的使用提供了全面而灵活的解决方案。项目概述GeminiBalance是一个基于PythonFastAPI构建的应用程序,主要用于提供Googl
从开源小白到 Apache Member,我的成长之路
开源小秘书
云栖社区Apache高并发
我们走过的每一步路,都会留下印记,越坚实,越清晰。近日,Apache软件基金会(ASF)官方Blog宣布全球新增40位ApacheMember,张乎兴有幸成为其中一位。目前,全球共有771位ASFMember,中国仅13位。本文将分享作者从0基础的开源小白,一路走来的感触,希望把期间的经历分享出来,让更多的人看到,世界开源舞台的中国力量。只要有持续的付出,总会有所收获。初次参与开源2014年,我加
「Go框架」gin框架是如何处理panic的?
-睡到自然醒~
golanggin开发语言后端springbootjava
本文我们介绍下recover在gin框架中的应用。首先,在golang中,如果在子协程中遇到了panic,那么主协程也会被终止。如下:packagemainimport("github.com/gin-gonic/gin")funcmain(){r:=gin.Default()//在子协程中引起panic,主协程也会退出gofunc(){panic("helloworld")}()//Listen
WPF实现一个播放音乐和视频的应用
code_shenbing
WPFwpf音视频C#
一、项目准备创建WPF项目在VisualStudio中新建WPFApp(.NETFramework)项目命名为"MediaPlayerApp"添加必要的NuGet包Install-PackageMicrosoft.WindowsAPICodePack-ShellInstall-PackageTagLibSharp二、界面设计1.主窗口XAML(MainWindow.xaml)三、代码实现1.主窗口
设计模式之上下文对象设计模式
Code Monkey’s Lab
设计模式设计模式
目录一、模式介绍二、架构设计三、Demo示例四、总结一、模式介绍上下文对象(ContextObject)模式最早由《CoreJ2EEPatterns》第二版提出,其核心目标是在多层或多组件间共享与当前作用域(如一次请求、一次会话、一次业务流程)相关的所有状态和服务,消除各组件对底层环境细节(如协议、线程、本地存储等)的直接依赖,从而提高系统的可复用性、可维护性和可测试性。ContextObject
长尾形分布论文速览【80-119】
木木阳
Long-tailed人工智能
为便于理解和应用,以下将30篇关于长尾分布的研究文献按主题进行分类整理。每一大类包含相应的工作,帮助我们从整体上把握各方向的研究进展。1.长尾半监督学习与伪标签优化Paper90:Uncertainty-awareSamplingforLong-tailedSemi-supervisedLearning提出了一种动态阈值选择方法(UDTS),能有效改善尾部分类性能,适用于不平衡类别的半监督学习。P
python内置函数——enumerate()
Believer_abby
python内置函数python
说明:emumerate()函数用于将一个可遍历的序列(如列表,元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在for循环中。语法:enumerate(sequence,[start=0])参数:sequence:表示一个序列、迭代器或其他支持迭代的对象;start:下标起始位置,默认为0。使用:seasons=['spring','summer','fall','winter'
【SpringBoot初级篇】JdbcTemplate常用方法
李少谦
springboot数据库sql
【SpringBoot初级篇】JdbcTemplate常用方法JdbcTemplate查询JdbcTemplate插入、更新、删除插入单条数据批量插入更新单条数据批量更新删除单条数据批量操作execute执行任意的SQLNamedParameterJdbcTemplate函数场景说明update(Stringsql,@NullableObject…args)增,删,改queryForObject(
MyBatis SQL 执行过程原理分析(附源码) 代理层:Mapper 接口动态代理 路由层:MapperMethod 分发 核心引擎:SqlSession 执行
夜雨hiyeyu.com
mybatissql数据库数据库架构javaspringbootdb
MyBatisSQL执行过程原理分析(附源码)1.代理层:Mapper接口动态代理2.路由层:MapperMethod分发3.核心引擎:SqlSession执行4.执行器:Executor调度5.处理器层:StatementHandler执行6.结果映射:ResultSetHandler转换核心执行流程图关键设计亮点性能优化建议MyBatis的SQL执行过程可以分为6个核心阶段,我们将通过源码逐层
怎么样才能成为专业的程序员?
cocos2d-x小菜
编程PHP
如何要想成为一名专业的程序员?仅仅会写代码是不够的。从团队合作去解决问题到版本控制,你还得具备其他关键技能的工具包。当我们询问相关的专业开发人员,那些必备的关键技能都是什么的时候,下面是我们了解到的情况。
关于如何学习代码,各种声音很多,然后很多人就被误导为成为专业开发人员懂得一门编程语言就够了?!呵呵,就像其他工作一样,光会一个技能那是远远不够的。如果你想要成为
java web开发 高并发处理
BreakingBad
javaWeb并发开发处理高
java处理高并发高负载类网站中数据库的设计方法(java教程,java处理大量数据,java高负载数据) 一:高并发高负载类网站关注点之数据库 没错,首先是数据库,这是大多数应用所面临的首个SPOF。尤其是Web2.0的应用,数据库的响应是首先要解决的。 一般来说MySQL是最常用的,可能最初是一个mysql主机,当数据增加到100万以上,那么,MySQL的效能急剧下降。常用的优化措施是M-S(
mysql批量更新
ekian
mysql
mysql更新优化:
一版的更新的话都是采用update set的方式,但是如果需要批量更新的话,只能for循环的执行更新。或者采用executeBatch的方式,执行更新。无论哪种方式,性能都不见得多好。
三千多条的更新,需要3分多钟。
查询了批量更新的优化,有说replace into的方式,即:
replace into tableName(id,status) values
微软BI(3)
18289753290
微软BI SSIS
1)
Q:该列违反了完整性约束错误;已获得 OLE DB 记录。源:“Microsoft SQL Server Native Client 11.0” Hresult: 0x80004005 说明:“不能将值 NULL 插入列 'FZCHID',表 'JRB_EnterpriseCredit.dbo.QYFZCH';列不允许有 Null 值。INSERT 失败。”。
A:一般这类问题的存在是
Java中的List
g21121
java
List是一个有序的 collection(也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜索列表中的元素。
与 set 不同,列表通常允许重复
读书笔记
永夜-极光
读书笔记
1. K是一家加工厂,需要采购原材料,有A,B,C,D 4家供应商,其中A给出的价格最低,性价比最高,那么假如你是这家企业的采购经理,你会如何决策?
传统决策: A:100%订单 B,C,D:0%
&nbs
centos 安装 Codeblocks
随便小屋
codeblocks
1.安装gcc,需要c和c++两部分,默认安装下,CentOS不安装编译器的,在终端输入以下命令即可yum install gccyum install gcc-c++
2.安装gtk2-devel,因为默认已经安装了正式产品需要的支持库,但是没有安装开发所需要的文档.yum install gtk2*
3. 安装wxGTK
yum search w
23种设计模式的形象比喻
aijuans
设计模式
1、ABSTRACT FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:
开发管理 CheckLists
aoyouzi
开发管理 CheckLists
开发管理 CheckLists(23) -使项目组度过完整的生命周期
开发管理 CheckLists(22) -组织项目资源
开发管理 CheckLists(21) -控制项目的范围开发管理 CheckLists(20) -项目利益相关者责任开发管理 CheckLists(19) -选择合适的团队成员开发管理 CheckLists(18) -敏捷开发 Scrum Master 工作开发管理 C
js实现切换
百合不是茶
JavaScript栏目切换
js主要功能之一就是实现页面的特效,窗体的切换可以减少页面的大小,被门户网站大量应用思路:
1,先将要显示的设置为display:bisible 否则设为none
2,设置栏目的id ,js获取栏目的id,如果id为Null就设置为显示
3,判断js获取的id名字;再设置是否显示
代码实现:
html代码:
<di
周鸿祎在360新员工入职培训上的讲话
bijian1013
感悟项目管理人生职场
这篇文章也是最近偶尔看到的,考虑到原博客发布者可能将其删除等原因,也更方便个人查找,特将原文拷贝再发布的。“学东西是为自己的,不要整天以混的姿态来跟公司博弈,就算是混,我觉得你要是能在混的时间里,收获一些别的有利于人生发展的东西,也是不错的,看你怎么把握了”,看了之后,对这句话记忆犹新。 &
前端Web开发的页面效果
Bill_chen
htmlWebMicrosoft
1.IE6下png图片的透明显示:
<img src="图片地址" border="0" style="Filter.Alpha(Opacity)=数值(100),style=数值(3)"/>
或在<head></head>间加一段JS代码让透明png图片正常显示。
2.<li>标
【JVM五】老年代垃圾回收:并发标记清理GC(CMS GC)
bit1129
垃圾回收
CMS概述
并发标记清理垃圾回收(Concurrent Mark and Sweep GC)算法的主要目标是在GC过程中,减少暂停用户线程的次数以及在不得不暂停用户线程的请夸功能,尽可能短的暂停用户线程的时间。这对于交互式应用,比如web应用来说,是非常重要的。
CMS垃圾回收针对新生代和老年代采用不同的策略。相比同吞吐量垃圾回收,它要复杂的多。吞吐量垃圾回收在执
Struts2技术总结
白糖_
struts2
必备jar文件
早在struts2.0.*的时候,struts2的必备jar包需要如下几个:
commons-logging-*.jar Apache旗下commons项目的log日志包
freemarker-*.jar  
Jquery easyui layout应用注意事项
bozch
jquery浏览器easyuilayout
在jquery easyui中提供了easyui-layout布局,他的布局比较局限,类似java中GUI的border布局。下面对其使用注意事项作简要介绍:
如果在现有的工程中前台界面均应用了jquery easyui,那么在布局的时候最好应用jquery eaysui的layout布局,否则在表单页面(编辑、查看、添加等等)在不同的浏览器会出
java-拷贝特殊链表:有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
bylijinnan
java
public class CopySpecialLinkedList {
/**
* 题目:有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
拷贝pNext指针非常容易,所以题目的难点是如何拷贝pRand指针。
假设原来链表为A1 -> A2 ->... -> An,新拷贝
color
Chen.H
JavaScripthtmlcss
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML> <HEAD>&nbs
[信息与战争]移动通讯与网络
comsci
网络
两个坚持:手机的电池必须可以取下来
光纤不能够入户,只能够到楼宇
建议大家找这本书看看:<&
oracle flashback query(闪回查询)
daizj
oracleflashback queryflashback table
在Oracle 10g中,Flash back家族分为以下成员:
Flashback Database
Flashback Drop
Flashback Table
Flashback Query(分Flashback Query,Flashback Version Query,Flashback Transaction Query)
下面介绍一下Flashback Drop 和Flas
zeus持久层DAO单元测试
deng520159
单元测试
zeus代码测试正紧张进行中,但由于工作比较忙,但速度比较慢.现在已经完成读写分离单元测试了,现在把几种情况单元测试的例子发出来,希望有人能进出意见,让它走下去.
本文是zeus的dao单元测试:
1.单元测试直接上代码
package com.dengliang.zeus.webdemo.test;
import org.junit.Test;
import o
C语言学习三printf函数和scanf函数学习
dcj3sjt126com
cprintfscanflanguage
printf函数
/*
2013年3月10日20:42:32
地点:北京潘家园
功能:
目的:
测试%x %X %#x %#X的用法
*/
# include <stdio.h>
int main(void)
{
printf("哈哈!\n"); // \n表示换行
int i = 10;
printf
那你为什么小时候不好好读书?
dcj3sjt126com
life
dady, 我今天捡到了十块钱, 不过我还给那个人了
good girl! 那个人有没有和你讲thank you啊
没有啦....他拉我的耳朵我才把钱还给他的, 他哪里会和我讲thank you
爸爸, 如果地上有一张5块一张10块你拿哪一张呢....
当然是拿十块的咯...
爸爸你很笨的, 你不会两张都拿
爸爸为什么上个月那个人来跟你讨钱, 你告诉他没
iptables开放端口
Fanyucai
linuxiptables端口
1,找到配置文件
vi /etc/sysconfig/iptables
2,添加端口开放,增加一行,开放18081端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 18081 -j ACCEPT
3,保存
ESC
:wq!
4,重启服务
service iptables
Ehcache(05)——缓存的查询
234390216
排序ehcache统计query
缓存的查询
目录
1. 使Cache可查询
1.1 基于Xml配置
1.2 基于代码的配置
2 指定可搜索的属性
2.1 可查询属性类型
2.2 &
通过hashset找到数组中重复的元素
jackyrong
hashset
如何在hashset中快速找到重复的元素呢?方法很多,下面是其中一个办法:
int[] array = {1,1,2,3,4,5,6,7,8,8};
Set<Integer> set = new HashSet<Integer>();
for(int i = 0
使用ajax和window.history.pushState无刷新改变页面内容和地址栏URL
lanrikey
history
后退时关闭当前页面
<script type="text/javascript">
jQuery(document).ready(function ($) {
if (window.history && window.history.pushState) {
应用程序的通信成本
netkiller.github.com
虚拟机应用服务器陈景峰netkillerneo
应用程序的通信成本
什么是通信
一个程序中两个以上功能相互传递信号或数据叫做通信。
什么是成本
这是是指时间成本与空间成本。 时间就是传递数据所花费的时间。空间是指传递过程耗费容量大小。
都有哪些通信方式
全局变量
线程间通信
共享内存
共享文件
管道
Socket
硬件(串口,USB) 等等
全局变量
全局变量是成本最低通信方法,通过设置
一维数组与二维数组的声明与定义
恋洁e生
二维数组一维数组定义声明初始化
/** * */ package test20111005; /** * @author FlyingFire * @date:2011-11-18 上午04:33:36 * @author :代码整理 * @introduce :一维数组与二维数组的初始化 *summary: */ public c
Spring Mybatis独立事务配置
toknowme
mybatis
在项目中有很多地方会使用到独立事务,下面以获取主键为例
(1)修改配置文件spring-mybatis.xml <!-- 开启事务支持 --> <tx:annotation-driven transaction-manager="transactionManager" /> &n
更新Anadroid SDK Tooks之后,Eclipse提示No update were found
xp9802
eclipse
使用Android SDK Manager 更新了Anadroid SDK Tooks 之后,
打开eclipse提示 This Android SDK requires Android Developer Toolkit version 23.0.0 or above, 点击Check for Updates
检测一会后提示 No update were found