gradle

第一次使用Android Studio时你应该知道的一切配置(二):新建一个属于自己的工程并安装Genymotion模拟器

只谈情不闲聊 提交于 2020-04-10 10:57:53
【声明】 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源: http://www.cnblogs.com/smyhvae/p/4392611.html 【系列】 第一次使用Android Studio时你应该知道的一切配置 第一次使用Android Studio时你应该知道的一切配置(二):新建一个属于自己的工程并安装Genymotion模拟器 第一次使用Android Studio时你应该知道的一切配置(三):gradle项目构建 【正文】 都说了放假不休息,奏是这么任性!!! 【开发环境】 物理机版本:Win7旗舰版(64位) Android Studio版本:1.1正式版 一、新建工程: 1、新建一个Project: 打开Android Studio,新建一个Project,界面如下: 上图中,设置好工程名和路径之后,接下来可以一路next: 二、Android Studio使用方法; 1、修改项目结构视图: Project新建完了以后,默认的结构如下: 上图可以看到,AS的目录结构和Eclipse中有很大区别,我们看下面的这张表格就一目了然了: 当然了,如果想切换成和Eclipse中类似的视图,点击左上角进行切换视图就行了: 切换之后,视图如下: 上图中,箭头处的app其实是一个module

想读Spring源码?先从这篇「 极简教程」开始吧...

空扰寡人 提交于 2020-04-10 09:50:43
为什么要阅读源码?这是一个有趣的问题,类似的问题还有,为什么要看书?为什么要爬山? 这也是一个哲学问题,我想每个人都有不同的答案,下面我是对阅读源码好处的一些思考。 (PS:也欢迎你在评论区留言补充) 阅读源码的好处 1.知其然知其所以然 这是一句 IT 人都很熟悉的话,在开源软件越来越多,并且升级越来越快的今天,如果说还有什么是重要的,那一定是知道它(开源软件)的核心原理和执行流程,这样就能为我们快速定位并修复问题提供宝贵的时间。 2.让自己变得更加优秀 学习源码可以让我们站在巨人的肩膀上,你可以学习源码中的优秀编码技巧和巧妙的设计思路,以及设计模式的落地应用,还有一些经典的编码规范和命名规则等。以此来约束和改进自己的编程代码,才能写成更好的代码。 3.找到更好的工作 在日益竞争激烈的面试中,尤其是在大厂的面试中,对于源码的考察非常看重,只有了解和熟悉这些源码,才能获得自己想要的 offer。 那既然阅读源码有这么多的好处,我们该如何开始呢? 如何阅读源码? 阅读源码的实现思路是这样的,首先我们需要下载 Spring 源码,然后把 Spring 的源码导入到 IDE 中,然后再编译 Spring 源码,再以添加 Module 的方式添加测试代码,再把 Spring 源码部分引入到 Module 中,此时我们就可以使用调试功能进入 Spring 框架的内部

想读Spring源码?先从这篇「 极简教程」开始吧...

会有一股神秘感。 提交于 2020-04-10 09:22:31
为什么要阅读源码?这是一个有趣的问题,类似的问题还有,为什么要看书?为什么要爬山? 这也是一个哲学问题,我想每个人都有不同的答案,下面我是对阅读源码好处的一些思考。 (PS:也欢迎你在评论区留言补充) 阅读源码的好处 1.知其然知其所以然 这是一句 IT 人都很熟悉的话,在开源软件越来越多,并且升级越来越快的今天,如果说还有什么是重要的,那一定是知道它(开源软件)的核心原理和执行流程,这样就能为我们快速定位并修复问题提供宝贵的时间。 2.让自己变得更加优秀 学习源码可以让我们站在巨人的肩膀上,你可以学习源码中的优秀编码技巧和巧妙的设计思路,以及设计模式的落地应用,还有一些经典的编码规范和命名规则等。以此来约束和改进自己的编程代码,才能写成更好的代码。 3.找到更好的工作 在日益竞争激烈的面试中,尤其是在大厂的面试中,对于源码的考察非常看重,只有了解和熟悉这些源码,才能获得自己想要的 offer。 那既然阅读源码有这么多的好处,我们该如何开始呢? 如何阅读源码? 阅读源码的实现思路是这样的,首先我们需要下载 Spring 源码,然后把 Spring 的源码导入到 IDE 中,然后再编译 Spring 源码,再以添加 Module 的方式添加测试代码,再把 Spring 源码部分引入到 Module 中,此时我们就可以使用调试功能进入 Spring 框架的内部

美团猫眼电影Android模块化实战总结

蹲街弑〆低调 提交于 2020-04-09 16:36:10
1 写这篇博客的初衷 首先一句话概括:我想把这几个月做的事情记录下来,并且希望尽量详细,希望读者读了这篇文章能够知道项目进行模块化,项目改业务框架可能会遇到哪些问题,具体每个步骤都做什么,而不是大致的了解。 现在很多人都在谈模块化,网上有一大堆的博客实践都在讲这个。很多谈的只是模块与模块之间的解耦,并且大部分讲的是通过router路由进行解耦,其他谈的不多,而且不乏泛泛而谈。但将一个app真正做到解耦,运行。需要解决的事情远远不止解耦。业务架构、进程间通信、资源等处理、解耦方式等都需要解决。恰好对于猫眼模块化整个过程的实施,从头到尾,分析解决各种问题,我陆陆续续的做了几个月。猫眼app的历史版本是一个耦合度很高的一个工程。从这样的一个历史版本到最终的各个业务模块能够独立运行并且能够做进程间通信,会涉及到各个方面的解耦和一些其他东西。我今天我就以该app为例(其他的app进行解耦可能会遇到不同的问题,这点注意一下),完整的讲下猫眼模块化的整个过程。每一个方面没有照搬网络的一些做法,而是分析对比,采用更好的设计方式。比如解耦使用serviceloader,而不是路由进行;比如架构使用更适合我们业务的一种带生命周期的mvp变种。我还会说下具体的花费时间和一些经验,这样大家以后做模块时也心中有数。(提示一下,其实模块化过程所涉及的东西除了文章提及的还有很多。有些未提及,是因为之前已经完成

Gradle(一)安装配置

空扰寡人 提交于 2020-04-09 11:24:37
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。面向Java应用为主。当前其支持的语言限于Java、Groovy、Kotlin和Scala。 到此不得不说另一个很火的工具maven,众所周知,maven的两大作用: ①:管理jar包 ②:构建项目 使用maven的缺点,XML配置文件的繁琐,特别是项目较大时,pom.xml配置眼花缭乱。 Gradle在maven的基础上,简化了配置文件,自动搜索Gradle等,使得我们创建管理项目更加简单。 一、下载,Gradle是压缩文件,下载解压即可。 https://gradle.org/releases/ 这个是发布版,当然你还可以去 https://services.gradle.org/ 下载更新的版本。本人下载5.2.1的发布版 https://gradle.org/next-steps/?version=5.2.1&format=all 下载完毕后在本地目录解压即可。 二、配置环境变量 :GRADLE_HOME 变量值为Gradle文件解压的实际路径,本文为例:E:\Gradle\gradle-5.2.1-all\gradle-5.2.1   在系统变量 path中加入:%GRADLE

Android Studio is using this JDK location … which is different to what Gradle uses by default

倾然丶 夕夏残阳落幕 提交于 2020-04-09 02:18:36
问题 After Android Studio sync my gradle project, I see the following message in the event log: Android Studio is using this JDK location: /path/to/my/project/specific/jdk which is different to what Gradle uses by default: /path/to/android/studio/embedded/jdk Using different locations may spawn multiple Gradle daemons if Gradle tasks are run from command line while using Android Studio. Set Android Studio to use the same JDK as Gradle and sync project I have /path/to/my/project/specific/jdk set in

Android Studio is using this JDK location … which is different to what Gradle uses by default

不羁的心 提交于 2020-04-09 02:14:21
问题 After Android Studio sync my gradle project, I see the following message in the event log: Android Studio is using this JDK location: /path/to/my/project/specific/jdk which is different to what Gradle uses by default: /path/to/android/studio/embedded/jdk Using different locations may spawn multiple Gradle daemons if Gradle tasks are run from command line while using Android Studio. Set Android Studio to use the same JDK as Gradle and sync project I have /path/to/my/project/specific/jdk set in

Android Studio is using this JDK location … which is different to what Gradle uses by default

不羁的心 提交于 2020-04-09 02:12:17
问题 After Android Studio sync my gradle project, I see the following message in the event log: Android Studio is using this JDK location: /path/to/my/project/specific/jdk which is different to what Gradle uses by default: /path/to/android/studio/embedded/jdk Using different locations may spawn multiple Gradle daemons if Gradle tasks are run from command line while using Android Studio. Set Android Studio to use the same JDK as Gradle and sync project I have /path/to/my/project/specific/jdk set in

Android Studio is using this JDK location … which is different to what Gradle uses by default

試著忘記壹切 提交于 2020-04-09 02:09:21
问题 After Android Studio sync my gradle project, I see the following message in the event log: Android Studio is using this JDK location: /path/to/my/project/specific/jdk which is different to what Gradle uses by default: /path/to/android/studio/embedded/jdk Using different locations may spawn multiple Gradle daemons if Gradle tasks are run from command line while using Android Studio. Set Android Studio to use the same JDK as Gradle and sync project I have /path/to/my/project/specific/jdk set in

Gradle这篇文章就够用了12-常用总结

拟墨画扇 提交于 2020-04-09 01:10:41
常用总结 gradle常用命令 //列出项目的所有属性. 这样你就可以看到插件加入的属性以及它们的默认值. gradle properties //列出项目的所有任务 gradle -q tasks --all 字符串 ' ' 仅仅表示一个字符串 " " 字符串拼接,可以拼接变量变量,也可以拼接任务$任务 ''' ''' 可以用来换行 定义常量 一个项目对应一个project实例,gradle根据build.gradle配置内容实例化project实例 project属性有group,name,version 方法有apply ,repositories,dependencies,task 属性的其他配置方式可以通过 : ext , gradle.properties ext.property1 = "this is property1" //也可以用闭包的方式 ext { property2 = "this is property2" } 定义任务 task hello { doLast { println 'Hello world!' } } 使用插件 //方式一 plugins { id 'war' id 'org.hidetake.ssh' version '2.9.0' } //方式二 //插件 apply plugin: 'java-library' apply