【Android应用开发】Android Studio 错误集锦 -- 将所有的 AS 错误集合到本文
.
一. 编译错误
1. "AndroidManifest.xml file not found" 错误
(1) 报错信息
报错信息 :
-- Message Make :
Information:Compilation completed with 1 error and 0 warnings in 2 sec Information:1 error Information:0 warnings Error:Android Source Generator: [MidiScope] AndroidManifest.xml file not found
-- Event Log :
上午8:41:38 Compilation completed with 1 error and 0 warnings in 2 sec
(2) 解决方案
解决方案 :
-- 选择 右键点击工程, 选择 Open Module Settings :
-- 配置 AndroidManifest 路径 :
2. "error: Error: No resource found that matches the given name (at 'resource' with value" 错误
(1) 报错信息
报错信息 :
-- Message Make :
Information:Using javac 1.8.0_45 to compile java sources Information:Compilation completed with 5 errors and 0 warnings in 3 sec Information:5 errors Information:0 warnings /Users/hanshuliang/Downloads/MidiScope/Application/src/main/AndroidManifest.xml Error:(27, -1) Android Resource Packaging: [MidiScope] /Users/hanshuliang/Downloads/MidiScope/Application/src/main/AndroidManifest.xml:27: error: Error: No resource found that matches the given name (at 'icon' with value '@mipmap/ic_launcher'). Error:(27, -1) Android Resource Packaging: [MidiScope] /Users/hanshuliang/Downloads/MidiScope/Application/src/main/AndroidManifest.xml:27: error: Error: No resource found that matches the given name (at 'label' with value '@string/app_name'). Error:(27, -1) Android Resource Packaging: [MidiScope] /Users/hanshuliang/Downloads/MidiScope/Application/src/main/AndroidManifest.xml:27: error: Error: No resource found that matches the given name (at 'theme' with value '@style/MidiScopeTheme'). Error:(33, -1) Android Resource Packaging: [MidiScope] /Users/hanshuliang/Downloads/MidiScope/Application/src/main/AndroidManifest.xml:33: error: Error: No resource found that matches the given name (at 'label' with value '@string/app_name'). Error:(48, -1) Android Resource Packaging: [MidiScope] /Users/hanshuliang/Downloads/MidiScope/Application/src/main/AndroidManifest.xml:48: error: Error: No resource found that matches the given name (at 'resource' with value '@xml/scope_device_info').
(2) 解决方案
解决方案 :
-- 选择 右键点击工程, 选择 Open Module Settings :
-- 配置 资源路径 路径 :
3. "This Activity already has an action bar supplied by the window decor." 错误
(1) 报错信息
报错信息 :
12-08 16:39:31.105 15700-15700/cn.zkhw.midi E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to start activity ComponentInfo{cn.zkhw.midi/cn.zkhw.midi.slide.MainActivity}: java.lang.IllegalStateException: This Activity already has an action bar supplied by the window decor. Do not request Window.FEATURE_SUPPORT_ACTION_BAR and set windowActionBar to false in your theme to use a Toolbar instead.
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2297)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2351)
at android.app.ActivityThread.access$700(ActivityThread.java:161)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1318)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:177)
at android.app.ActivityThread.main(ActivityThread.java:5426)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1225)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1041)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalStateException: This Activity already has an action bar supplied by the window decor. Do not request Window.FEATURE_SUPPORT_ACTION_BAR and set windowActionBar to false in your theme to use a Toolbar instead.
at android.support.v7.app.AppCompatDelegateImplV7.setSupportActionBar(AppCompatDelegateImplV7.java:198)
at android.support.v7.app.AppCompatActivity.setSupportActionBar(AppCompatActivity.java:99)
at cn.zkhw.midi.slide.MainActivity.onCreate(MainActivity.java:28)
at android.app.Activity.performCreate(Activity.java:5372)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1104)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2259)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2351)?
at android.app.ActivityThread.access$700(ActivityThread.java:161)?
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1318)?
at android.os.Handler.dispatchMessage(Handler.java:99)?
at android.os.Looper.loop(Looper.java:177)?
at android.app.ActivityThread.main(ActivityThread.java:5426)?
at java.lang.reflect.Method.invokeNative(Native Method)?
at java.lang.reflect.Method.invoke(Method.java:525)?
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1225)?
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1041)?
at dalvik.system.NativeStart.main(Native Method)?
12-08 16:39:32.815 15700-15700/cn.zkhw.midi I/Process: Sending signal. PID: 15700 SIG: 9
(2) 解决方案
解决方案 :
-- 出错原因 : 使用 ToolBar 后, 原有的 ActionBar 没有取消, 两个导航栏都出现就出现了上述错误;
-- 设置一个 style :
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
-- 将这个 style 设置给 Activity : android:theme="@style/AppTheme.NoActionBar"
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
4. "aidl is missing" 错误
(1) 报错信息
报错信息 :
FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':library:compileReleaseAidl'. > aidl is missing * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. BUILD FAILED Total time: 0.651 secs
(2) 解决方案
解决方案 :
-- 错误原因 : SDK 文件不全, 换一个 SDk 重新编译即可通过;
-- 原来的 SDK 查看 : 右键点击工程, 选择 "Open Module Setting" ;
-- 编译设置 : 由此可见 22 5.1 的 SDK 是不完整的;
-- 更换 SDK 即可完成编译 : 注意 SDK 版本 和 编译工具的版本必须对应;
5. "unspecified on project ... resolves to an APK archive which is not supported as a compilation dependency." 错误
(1) 报错信息
报错信息 :
Warning:Dependency AndroidQuickDevelop:lib_widget:unspecified on project app_sample resolves to an APK archive which is not supported as a compilation dependency. File: C:\hanshuliang\develop\workspace\as\AndroidQuickDevelop\lib_widget\build\outputs\apk\lib_widget-release-unsigned.apk
-- 场景描述 : 需要一个 Module 存放所有的自定义组件, 如果使用 library 就不能使用 R 文件, 无法引用颜色 属性 图片 布局 等资源, 因此将自定义组件写入一个 Module B 中, 在 Module A 中引用 Moudle B, 就会出现上述错误.
(2) 解决方案
解决方案 :
-- 原来的 gradle 脚本 : 注意其中的 apply plugin 中的输出类型是 application, 另外在 defaultConfig 中有 applicationId.
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "cn.org.octopus.lib_widget"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
}
-- 修改为 : 需要将 apply plugin 修改为 apply plugin: 'com.android.library' , 删除 applicationId, 下面的是修改完的 gradle 脚本, 修改完后即可编译.
apply plugin: 'com.android.library'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
}
6. "Unable to find method 'org.gradle.api.internal.project.ProjectInternal.getPluginManager()Lorg/gradle/api/internal/plugins/PluginManagerInternal;'" 错误
(1) 报错信息
报错信息 :
Error:Unable to find method 'org.gradle.api.internal.project.ProjectInternal.getPluginManager()Lorg/gradle/api/internal/plugins/PluginManagerInternal;'. Possible causes for this unexpected error include:<ul><li>Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.) <a href="syncProject">Re-download dependencies and sync project (requires network)</a></li><li>The state of a Gradle build process (daemon) may be corrupt. Stopping all Gradle daemons may solve this problem. <a href="stopGradleDaemons">Stop Gradle build processes (requires restart)</a></li></ul>In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.
(2) 解决方案
解决方案 :
-- 参考 : http://www.cnblogs.com/stozen/p/5123841.html;
-- 解决方案 : 将 gradle/wrapper/gradle-wrapper.properties 中的 distributionUrl 属性修改为 distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-all.zip;
7. Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE environment variable to 错误
(1) 报错信息
报错信息 : 该问题总是在 Gradle 更新后出现, 原因可能是使用了 alpha 版本的 gradle 插件;
8:28:29 Gradle sync failed: Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE environment variable to "c1b9f8c9ba6edf57abf0bf0a680ecf1cd51bbfbe"
Consult IDE log for more details (Help | Show Log)
(2) 解决方案
解决方案 :
-- 参考 : 点击打开链接;
-- 解决方案 : 去 https://jcenter.bintray.com/com/android/tools/build/gradle/ 网站查看最新的 Gradle 插件版本;
-- 转载资料 :
一、问题原理
其实问题也很明确,就是插件太老需要更新。
下面举个很好但是很久以前的例子,原理都是一样的:
This is my app gradle file:
android {
compileSdkVersion 22
buildToolsVersion "22.0.0"
defaultConfig {
applicationId "xxx.xxxxxx.xxxxx"
versionCode 1
versionName '1'
minSdkVersion 9
targetSdkVersion 22
versionCode 1
versionName '1'
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'com.google.android.gms:play-services:6.5.87'
compile 'com.android.support:recyclerview-v7:21.0.0'
compile 'com.android.support:cardview-v7:21.0.0'
compile 'com.facebook.android:facebook-android-sdk:3.21.1'
testCompile 'junit:junit:4.12'
compile project(':volley')
}
This is my top build.gradle:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.1.0-rc1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
1.上边的就是gradle版本太老
需要把:classpath 'com.android.tools.build:gradle:1.1.0-rc1'
change to:
classpath'com.android.tools.build:gradle:1.1.3'//latest 2.2.0-alpha1
现在gradle的版本已经更新到2.13啦。基本上就是gradle的问题。
2.App build.gradle:
Change:
compile'com.android.support:recyclerview-v7:21.0.0'
compile'com.android.support:cardview-v7:21.0.0'
To:
compile'com.android.support:recyclerview-v7:22.0.0'//latest23.1.1
compile'com.android.support:cardview-v7:22.0.0'//latest23.1.1
打开SDK Manager把依赖包也更新,一般更新到最新就可以啦。
下边是一些插件的网址:
Gradle: https://gradle.org/downloads
Always check the Android SDK Manager for the latest revisions:
Android Build Tools Plugin: http://tools.android.com/tech-docs/new-build-system
Android Support Libraries: http://developer.android.com/tools/support-library/features.html
To view the latest plugin releases, view the Bintray Jcenter page directly:https://bintray.com/android/android-tools/com.android.tools.build.gradle/view.
可以参考这个回答:http://stackoverflow.com/questions/29063968/plugin-is-too-old-please-update-to-a-more-recent-version-or-set-android-daily
二、更新gradle
这个更新gradle真的是很坑啊,百度了半天,倒是找到不少解决办法,但真的是很简洁!!!一些主要步骤都给省略啦,这让我这种新手怎么办!!在这里总结下:
这是离线更新,如果FQ在线更新的话也是一样的,在线更新就把下边的步骤1略过即可,从2开始看。
1.先去gradle官网把最新的gradle下下来,Gradle官网: https://gradle.org/downloads 注意:下载完不要解压!
2.在你的项目根目录下面找gradle/wrapper/gradle-wrapper.properties这个文件,修改里边的文件内容:
#Mon Dec 28 10:00:20 PST 2015
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.13-all.zip
就是改最后一行:distributionUrl=https\://services.gradle.org/distributions/gradle-2.13-all.zip这个改为最新的版本,这里最新就是2.1我这是修改完的。
3.第三部很重要的一步,先打开你的Gradle 的user home ,默认是 C:\Users\【你当前的 用户名】 \.gradle 。按下图的路径展开,只是打开不要动任何东西
在Android Studio内置的终端:Terminal 如图:输入gradlew -v
执行这个命令会自动下载上边设置的版本:2.13,我这里已经下载完了,所以显示的是gradle 2.13。注意执行这个命令gradlew -v才会生成gradle-XXX-all和名字乱码的那个文件夹,我当时看别人的方法就很苦恼那个名字乱码的文件夹是怎么生成的!
执行后显示:Downloading distributionUrl=https\://services.gradle.org/distributions/gradle-2.13-all.zip //大致就是这个,说明它正在下载,如果你想FQ在线更新就可以一直等它执行完毕,我试过FQ的情况下速度也是可以的
这时候你就注意上边打开的哪个文件夹,不断刷新看看是否生成了最新版本gradle的文件夹,有了这个文件夹就打开里边是一个名字是乱码文件夹,gradle-2.13-all\1b9wlm73elu4cqnbc0rk7r7qn//这个是我的
看到生成这个文件夹之后就可以关掉android studio了。
4.把第一步的压缩包复制到上边生成的乱码文件夹里,打开android studio,在Terminal里输入:gradlew -v,就会自动解压,你只需等待就可以。如图:
解压完成后:
至此你的gradle就更新到了最新版本。
可以参考这个:http://www.cnblogs.com/leo-lsw/p/gradle-first-created-error.html
搞了好久终于整明白这个问题啦,总结下希望能帮到和我一样的新手。。。。
转载注明出处:http://www.cnblogs.com/jycboy/p/5534009.html
三、更新Android Gradle Plugin
发现有时候更新了gradle但是gradle plugin版本也不可以。下面就改android plugin version
https://jcenter.bintray.com/com/android/tools/build/gradle/ android plugin version 改成最新的;
在android studio里project structrue->Project->Android Plugin Version里直接改成最新的,然后build Project就可以
参考知乎:http://www.zhihu.com/question/39036683/answer/91435802 //这个回答:都用最新的 就可以了 https://jcenter.bintray.com/com/android/tools/build/gradle/ android plugin version 改成最新的;Gradle Distributions gradle version 目前最新版本是2.12 手动下下来,放到本地,配置 gradle home
.
8. * What went wrong:Execution failed for task ':xxx:clean'.> Unable to delete directory: C:\hanshuliang\develop\workspace\xxx\build\outputs\apk
(1) 报错信息
报错信息 :
Information:Gradle tasks [:APP_OCTOPUS:clean, :APP_OCTOPUS:generateDebugSources, :APP_OCTOPUS:mockableAndroidJar, :APP_OCTOPUS:prepareDebugUnitTestDependencies, :APP_OCTOPUS:generateDebugAndroidTestSources, :APP_OCTOPUS:assembleDebug] Error:Execution failed for task ':APP_OCTOPUS:clean'. > Unable to delete directory: C:\hanshuliang\develop\workspace\OCTOPUS\APP_OCTOPUS\build\outputs\apk Information:BUILD FAILED Information:Total time: 6.29 secs Error:FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':APP_OCTOPUS:clean'. > Unable to delete directory: C:\hanshuliang\develop\workspace\OCTOPUS\APP_OCTOPUS\build\outputs\apk * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Information:2 errors Information:0 warnings Information:See complete output in console
(2) 解决方案
解决方案 :
-- 参考链接 : http://stackoverflow.com/questions/25051278/unable-to-clean-project-in-android-studio;
-- 到 windows 目录中删除该文件 : 发现无法删除, 直接用 360 强力删除 搞定, 芝麻大点问题;
.
9. UnsupportedMethodException Error executing task com.intellij.execution.impl.ExecutionManagerImpl$5@3f12ec8a: Unsupported method: AndroidArtifact.getInstantRun().
(1) 报错信息
报错信息 :
下午6:47:50 UnsupportedMethodException
Error executing task com.intellij.execution.impl.ExecutionManagerImpl$5@3f12ec8a: Unsupported method: AndroidArtifact.getInstantRun().
The version of Gradle you connect to does not support that method.
To resolve the problem you can change/upgrade the target version of Gradle you connect to.
Alternatively, you can ignore this exception and read other information from the model.
下午6:48:48 Executing tasks: [:app_midi_sheet_music:assembleDebug]
(2) 解决方案
解决方案 :
-- 参考链接 : http://blog.csdn.net/piscesq329a/article/details/49945239;
-- 取消 Instant Run 选项 : 进入 Setting 进行如下设置 : 取消 Instant Run 选项;
10. Error:Unable to find method 'org.gradle.api.tasks.Sync.getInputs()Lorg/gradle/api/internal/TaskInputsInternal;'.
报错信息 :
-- 错误信息 :
Error:Unable to find method 'org.gradle.api.tasks.Sync.getInputs()Lorg/gradle/api/internal/TaskInputsInternal;'. Possible causes for this unexpected error include: 1.Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.) 网络中断 -- Re-download dependencies and sync project (requires network) 2. The state of a Gradle build process (daemon) may be corrupt. 其它 Gradle 进程干扰 -- Stopping all Gradle daemons may solve this problem. 3. Stop Gradle build processes (requires restart) 重启 AS Your project may be using a third-party plugin which is not compatible with the other plugins in the project or the version of Gradle requested by the project. In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.
解决方案 :
-- 解决方案 : 更新最新的 SDK Tools, Gradle, Gradle Plugin;
-- 更新最新 Gradle 插件 : 更新最新的 Gradle 插件, 到 https://jcenter.bintray.com/com/android/tools/build/gradle/ 网站查看最新的 Gradle 插件, 查询到最新的插件版本为 2.3.0-beta1,
-- 更新最新的 Gradle 工具 : 查看地址 https://services.gradle.org/distributions/, 最新的是 gradle-3.3-all.zip, 将 gradle/wrapper/gradle-wrapper.properties 中的 distributionUrl 更新成 distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip ;
-- 更新最新的 SDK Build Tools : 到 SDK Manager 中更新最新的 SDK 和 SDK BuildTools;
.
.
【Android应用开发】Android Studio 错误集锦 -- 将所有的 AS 错误集合到本文的更多相关文章
- 码农人生——从未学过Android如何开发Android App 案例讲解-第002期案例
标题有点晃眼,本次分享是002期博文的实践故事,不会有任何代码.也不会教别人android 如何开发,类似博文已经有大批大批,而且还会有陆陆续续的人写,我写的文章,主要是经验之谈,希望总结出的一些方法 ...
- Android NDK开发 Android Studio使用新的Gradle构建工具配置NDK环境(一)
本文主要讲述了如何如何在Android Studio使用新的Gradle构建工具配置NDK环境,现在把相关的步骤整理出来分享给Android程序员兄弟们,希望给他们在配置NDK环境时带来帮助. 从An ...
- [Hybrid App]--Android混合开发,Android、Js的交互
AndroidJs通信 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !imp ...
- Android BLE开发——Android手机与BLE终端通信初识
蓝牙BLE官方Demo下载地址: http://download.csdn.net/detail/lqw770737185/8116019参考博客地址: http://www.eoeandr ...
- Android多媒体开发-- android中OpenMax的实现整体框架
1.android中用openmax来干啥? android中的AwesomePlayer就 是用openmax来做(code)编解码,其实在openmax接口设计中,他不光能用来当编解码.通过他的组 ...
- [android 应用开发]android 分层
1 应用层, 2 应用框架层(框架是所有开发人员共同使用和遵守的约定) 3 系统运行库层 4 linux内核层
- Android NDK 开发(三)--常见错误锦集合Log的使用【转】
转载请注明出处:http://blog.csdn.net/allen315410/article/details/41826511 Android NDK开发经常因某些因素会出现一些意想不到的错误, ...
- 开发Android必知的工具
程序开发有时候非常依赖使用的开发工具,好的完备的开发工具可以让开发人员的工作效率有大幅度的提高.开发Android也是如此,大家可能都离不开Eclipse或Android Studio这些工具,但他们 ...
- Android+PHP开发最佳实践
本书以一个完整的微博应用项目实例为主线,由浅入深地讲解了Android客户端开发和PHP服务端开发的思路和技巧.从前期的产品设计.架构设计,到客户端和服务器的编码实现,再到性能测试和系统优化,以及最后 ...
随机推荐
- 【Codeforces Round 438 A B C D 四个题】
题目所在比赛的地址在这里呀 A. Bark to Unlock ·述大意: 输入一个目标串.然后输入n(1<=n<=100)个串,询问是否可以通过这些串收尾相接或者它本身拼出目 ...
- hdu 5468(莫比乌斯+搜索)
hdu 5468 Puzzled Elena /*快速通道*/ Sample Input 5 1 2 1 3 2 4 2 5 6 2 3 4 5 Sample Output Case #1: ...
- Gradle学习之闭包
Gradle中的闭包其实就等同于Groovy中闭包,Groovy是一种jvm语言,语法兼容于java,曾几何时,也在脚本语言中独树一帜,初学Gradle的时候,大家很容易被其语法所迷惑,由于Gradl ...
- xml 和数组的相互转化
数组转化为xml: function arrtoxml($arr,$dom=0,$item=0){ if (!$dom){ $dom = new DOMDocument("1.0" ...
- C语言程序设计第六次作业--循环结构(2)
(一)改错题 序列求和:输入一个正实数eps,计算序列部分和 1 - 1/4 + 1/7 - 1/10 + ... ,精确到最后一项的绝对值小于eps(保留6位小数). 输入输出样例: Input e ...
- SpringMVC 教程 - URI 链接
原文链接:https://www.codemore.top/cates/Backend/post/2018-04-22/spring-mvc-uri-links 这一节主要讲的是Spring Fram ...
- 对闭包的理解(closure)
什么是闭包: 当你声明一个局部变量时,这个局部变量有作用域,通常局部变量值只存在于你定义的Block or Function中: function() { var a = 1; console.log ...
- 【DotNet加密方式解析】-- 好文收藏
By -- 彭泽 一. DotNet加密方式解析--散列加密 笔记: 散列加密种类: 1.MD5 128位 2.SHA-1 160位 3.SHA-256 256位 4.SHA-384 384位 ...
- d4d#9 玩Docker只要浏览器就够了,PWD是个神奇的网站
本文是d4d系列的第9篇,在这一篇中给大家介绍一个学习Docker最为快捷高效的方式,你不需要自己搭建环境,也不用担心把自己的开发环境搞乱,你需要的只是一个浏览器,就可以立即开始学习Docker的常用 ...
- 进程间通信——XSI IPC之消息队列
进程间通信XSI IPC有3种:消息队列.共享内存.信号量.它们之间有很多相似之处,但也有各自的特殊的地方.消息队列作为其中比较简单的一种,它会有些什么东西呢,来一起探讨探讨.. 消息队列结构 消息队 ...