- 博客(42)
- 收藏
- 关注
原创 在Gradle中使用阿里巴巴Java开发规约插件进行代码检查
概述 最近阿里发布了《阿里巴巴Java开发手册》,一时间无数阿里拥趸如获武穆遗书,就在近日阿里又顺便发布了<阿里巴巴java开发规约插件>,可以轻松的在码字阶段获得相应的编码提示,那么,在Gradle中如何应用阿里开发规约进行代码检查呢.且看下文. 阿里的开发规约插件是基于PMD进行的代码检测,所以在Gradle应用阿里开发规约检查只需要使用gradle提供的pmd插件即可达成目的. 目前
2017-10-18 17:20:38 2429
原创 [Gradle中文教程系列]-跟我学Gradle-15:团队协作 - 使用Gradle Wrapper来统一构建版本
概述Gradle Wrapper(Gradle包装器) 作用 - 统一团队gradle版本,解决因团队gradle版本混乱导致构建失败等问题 - 自动下载安装gradle,使gradle萌新可以0配置快速进入构建添加Gradle wrapper支持可以通过执行gradle wrapper任务来添加wrapper支持,wrapper任务时内置任务,无需额外配置。通过内置任务来添加wrap
2017-05-13 10:47:16 1047
原创 [Gradle中文教程系列]-跟我学Gradle-5.7:依赖-上传与发布番外篇-发布到Jcenter
这是一个使用gradle上传到Jcenter的一个示例 具体步骤 这里写的已经非常明白了 并且提供了多个示例 https://github.com/bintray/gradle-bintray-plugin本文源码上传到jcenter至少需要四个文件,除了打包的jar之外, 还需要pom和javadoc,source,否则是通不过jcenter审核的。下面是博客引文 有时你或许会想发布自己
2017-01-16 09:25:31 715
原创 [Gradle中文教程系列]-跟我学Gradle-附录-2.Gradle的日志级别
Gradle在执行时提供了6个常用日志级别,并且提供了友好的参数可以让你随心所欲的控制控制台输出。日志级别 日志级别 级别描述 ERROR 错误消息 QUIET 重要的信息消息 WARNING 警告消息 LIFECYCLE 进度信息消息 INFO 信息性消息 DEBUG 调试消息日志参数 命令参数 级别描述 没有日志选项 LIFE
2017-01-10 13:18:35 746
原创 [Gradle中文教程系列]-跟我学Gradle-7.3:打包-为Web工程打不同环境包
通过一种奇葩的快捷方式给web工程打不同环境包 通常而言,开发环境和生产环境参数有着较大的差异,在上古时代,猿们通过打包时或者开发时手工修改配置文件的方式来区分生产环境和开发环境。显然这种方式是比较低效且lowbee的。那么,我们可以将不同环境的配置文件各建一份,通过Gradle来进行不同环境的打包。比如如下几种方式根据不同环境的参数建立不同的环境文件,打包时只打包相应的环境文件把环境参数配置
2017-01-04 15:47:50 1559
原创 [Gradle中文教程系列]-跟我学Gradle-5.6:依赖-依赖报告和冲突的解决
本小节示例脚本apply plugin: "java"ext { bootVersion = "1.4.2.RELEASE" tomcat_embed = "8.5.4"}repositories { maven { url"https://repo.spring.io/libs-release" } jcenter()}dependencies { co
2016-12-28 17:33:41 1151
原创 [Gradle中文教程系列]-跟我学Gradle-5.5:依赖-构件的上传与发布
借助maven-publish插件可以轻松地将jar包发布到仓库中。这个过程没啥幺蛾子直接上代码吧。了解更多配置可以查看 Maven plugin插件章节apply plugin: 'maven-publish'apply plugin: 'java'// 打包源文件task sourceJar(type: Jar) { from sourceSets.main.allSourc
2016-12-28 15:19:32 548
原创 [Gradle中文教程系列]-跟我学Gradle-5.4:依赖-依赖的更新与缓存
依赖版本的管理(传递性/排除/动态版本/强制/)更新依赖 在执行build、compile等任务时会解析项目配置的依赖并按照配置的仓库去搜寻下载这些依赖。默认情况下,Gradle会依照Gradle缓存->你配置的仓库的顺序依次搜寻这些依赖,并且一旦找到就会停止搜索。如果想要忽略本地缓存每次都进行远程检索可以通过在执行命令时添加--refresh-dependencies参数来强制刷新依赖。
2016-12-28 11:46:58 1771 1
原创 [Gradle中文教程系列]-跟我学Gradle-5.3:依赖-管理依赖的版本(传递(transitive)\排除(exclude)\强制(force)\动态版本(+))
上一篇:依赖的分类什么是传递依赖 在Maven仓库中,构件通过POM(一种XML文件)来描述相关信息以及传递性依赖。Gradle 可以通过分析该文件获取获取所以依赖以及依赖的依赖和依赖的依赖的依赖,为了更加直观的表述,可以通过下面的输出结果了解。+--- org.springframework:spring-web:4.3.4.RELEASE| | +--- org.springfr
2016-12-28 11:02:35 28096 3
原创 [Gradle中文教程系列]-跟我学Gradle-5.2:依赖的分类
依赖的分类 类型 描述 外部依赖 依赖存放于外部仓库中,如jcenter ,mavenCentral等仓库提供的依赖 项目依赖 依赖于其它项目(模块)的依赖 文件依赖 依赖存放在本地文件系统中,基于本地文件系统获取依赖 内置依赖 跟随Gradle发行包或者基于Gradle API的一些依赖,通常在插件开发时使用 子模块依赖 还没搞清楚是什么鬼外部依赖可
2016-12-27 16:08:21 847 1
原创 [Gradle中文教程系列]-跟我学Gradle-5.1:依赖的坐标与范围
依赖的坐标 仓库中构件(jar包)的坐标是由groupId、artifactId、version组成的字符串构成的,在仓库中通过以GAV组成的坐标来定位所需的jar包.在gradle中可以通过以下方式来声明依赖: testCompile group: 'junit', name: 'junit', version: '4.0' 这里前面的testCompile是声明依赖的的方位,如
2016-12-26 11:35:38 3553 1
原创 [Gradle中文教程系列]-跟我学Gradle-5.0:依赖-关于依赖管理
什么是依赖管理 通常而言,依赖管理包括两部分,对依赖的管理以及发布物的管理;依赖是指构建项目所需的构件(jar包等)。例如,对于一个应用了spring普通的java web项目而言,spring相关jar包即项目所需的依赖。发布物,则是指项目产出的需要上传的项目产物。传统依赖管理的痛点 毋庸置疑,几乎绝大多数项目都会或多或少的依赖于第三方库,尤其像log4j、dom4j、common-lon
2016-12-26 11:34:31 2222 1
原创 采用Gradle快速构建基于Spring boot的MVC应用
Spring boot是用以简化Spring配置开发的一枚框架,采用Spring boot可以抛弃繁琐的XML配置,采用JavaConfigure的方式进行快速配置。同时该框架提供了包含预配置的众多的starter可以极大的简化配置工作量。下面的代码便是采用web-starter和Gradle进行快速创建一个mvc应用的示例。目录结构引入依赖apply plugin: "war"// 版本号ex
2016-12-14 10:23:03 522
原创 [Gradle中文教程系列]-跟我学Gradle- 8.6 - 多模块项目- 水平布局和分层布局项目
如果你阅读了前面的内容,那么你已经掌握了分层布局。没错,Gradle 默认即是采用的分层布局。只需要正确的配置 settings 文件即可。 某些情况下,若是出于一些不可描述的原因需要进行水平布局,那么 Gradle 也提供了良好的支持。如果你之前曾经翻阅过 Settings 接口的手册,那么或许你已经发现Settintgs接口提供了一个includeFlat方法,借助此方法即可实现水平布局的
2016-12-12 16:38:30 994 2
原创 [Gradle中文教程系列]-跟我学Gradle- 8.5 - 多模块项目- 分离配置
当项目足够复杂的时候,采用集中化配置显然不是一个好计谋,尤其是如果你有几十个模块的的时候,当你打开一个几百行的脚本无疑会感到一种不由自主的恶心在背后拍拍你的肩膀说:”兄弟 吐吧”…. 此时,将不同项目的定制行为分离到各自的脚本里无疑会显著的减轻你的饱腹感。这不仅可以是项目结构看起来更加清晰,脚本更加易读,分离化的配置还可以让你更好的关注子模块的特定行为。 要分离模块配置只需要很简单的两步
2016-12-12 16:37:59 819
原创 [Gradle中文教程系列]-跟我学Gradle-8.4-多模块项目- build文件
在根项目下,除了 settings.gradle 文件之外,通常还需要提供一个 build.gradle 文件,该文件用以定义子模块行为以及描述项目的一些公共插件、属性、依赖等。 下面的示例中,定义了所有模块共享的group、版本号,所有子模块共享的插件,以及针对main项目的定制化配置。// 所有模块都采用统一的版本号以及groupNameallprojects { group = '
2016-12-12 16:37:34 718
原创 [Gradle中文教程系列]-跟我学Gradle-8.3-多模块项目- settings文件
我们了解到一个典型的多模块项目需要有一个根模块项目以及模块描述文件(默认为settings.gradle),下面我们将通过一个 多项目示例 来对多模块项目的结构以及脚本进行更深入的了解。如果要让 Gradle 支持多 构建,只需为你的项目确定一个 根模块项目 并且在根模块项目下添加 settings.gradle 文件用以描述模块(项目)关系include 'base','main' 这里将模块
2016-12-12 16:37:13 3313
原创 [Gradle中文教程系列]-跟我学Gradle-8.2-多模块项目- 项目结构
上一节多模块项目 - 概述 在进行介绍之前,这里有必要先解释一下项目(project)和模块(module)的概念。Gradle中默认是不存在模块概念的,这里指的多模块项目构建对应到Gradle中即是多项目构建,为了便于理解,所以本文中一律按多模块进行描述。 关于多项目和多模块的分歧无法溯源,或许是由于eclipse和idea不同定义而起吧。在eclipse中不存在模块概念,走的是worksp
2016-12-12 16:36:50 1406
原创 [Gradle中文教程系列]-跟我学Gradle-8.1-多模块项目 - 概述
随着项目规模的扩展和功能的增加,任何一个简单的项目基本都会进行模块的拆分独立,然后通过项目之间的依赖进行重新整合。 项目拆分带来的好处也显而易见。拆分可以是项目结构更加清晰,职责划分更加明确,相关模块的负责人只需专注于自己负责的子模块而无需对整个项目进行一次构建。 如果不采用构建工具或许最原始的方式无非于将一些相对独立的和公共的模块代码拆分成独立项目,通过手工打jar包替换的方式进行多项目之
2016-12-12 16:36:13 502
原创 [Gradle中文教程系列]-跟我学Gradle-8.7.多模块项目之 - spring boot + gradle + 构建公共jsp页面的多模块项目
多模块项目之 - spring boot + gradle + 构建公共jsp页面的多模块项目标题党!!!!烹制原理Servlet 3.1 规范里 jar包中META-INF/resources/下的文件会被视为根目录文件进行正常访问 , 这也就意味着我们可以将某些 静态页面/图片/样式/js 等打到jar包里当做依赖jar包引用 , 像webjars基本就是这么搞的.当然 如果你在搞前后端分离、
2016-12-02 15:22:12 2791
原创 [Gradle中文教程系列]-跟我学Gradle-14.2:eclipse中Gradle插件的使用
Eclipse中Gradle插件的使用安装 无论你使用的是 eclipse/sts/myeclipse 还是任何eclipse的变种,可以通过点击Help->eclipse marketplace去插件市场搜索buildship然后点击install进行安装,此过程完全傻瓜操作,不赘述. 如果你是一名传统程序猿习惯通过site安装,可以参考下面的表格通过点击Help->Install New S
2016-11-18 11:19:26 4230
原创 [Gradle中文教程系列]-跟我学Gradle-14.1:Gradle IDEA集成插件的使用
IDEA中Gradle插件的使用Idea本身已经集成了Gradle插件,你可以在File | Settings | Build, Execution, Deployment | Build Tools | Gradle 下找到 相关配置配置 本文基于IDEA 2016.2 配置项 说明 Linked Gradle projects 所有Gradle添加了Gradle支持的项目列表
2016-08-17 13:04:13 2419
原创 [Gradle中文教程系列]-跟我学Gradle-4.1:Nexus私服的安装与配置
Nexus的安装与配置仅以此文,献给陷入懒癌晚期的小伙伴们.本文基于nexus 3.xx.0. What?Why?When?Who?Where? Sonatype Nexus是一款maven仓库管理软件,有了它,你可以方便的搭建属于自己的maven私服。而通过搭建私服,可以带来几个显而易见的好处。 - 节省外网带宽:以一个30人的项目小队为例,如果没有私服,所有的人在更新依赖时,都将从中央仓
2016-08-15 10:14:05 4378 1
原创 [Gradle中文教程系列]-跟我学Gradle-附录:gradle命令行详解
Gradle 命令行命令详解,根据Gradle.2.13版本的help命令编写而来. 参数 描述 -?, -h, –help 显示帮助 - - ….. -a, –no-rebuild 忽略”项目依赖”,假设模块web依赖于base,采用此参数后将不再构建base模块,即使base模块代码存在更新也不会(注意:如果base模块是clean的,那么加此参数构建不会将base依赖构建
2016-06-06 16:50:48 1763
原创 4跟我学Gradle-仓库详解
什么是仓库 顾名思义,仓库就是一个进行集中存储东西的地方,放到这里可以理解为集中管理构件(jar包)的地方.仓库包含了绝大多数流行的开源Java构件,以及源码、作者信息、SCM、信息、许可证信息等.为什么要用仓库在采用传统方式管理的项目中,通常会把第三方依赖jar包放到./lib或者./web-inf/lib下,这种情况会产生如下几个弊端:侵占硬盘空间:虽然现在硬盘的容量已经越来越大,但采用传统
2016-05-16 10:47:24 3891
原创 RN(react native)入坑指南-10,组件的生命周期
创建阶段 getDefaultProps : 在创建类的时候调用,处理props的默认值,getDefaultProps仅会被调用一次,这里的意思是无论你会创建多少个ReactElement,这个函数都只执行一次,之后的默认props都会直接使用改函数的返回值。实例化阶段constructor(getInitialState):初始化组件state的值,返回值会赋值给this.state属性,这
2016-04-29 14:02:20 4750
原创 RN(react native)入坑指南-12,打正式签名包和发布
执行 react-native start启动打包服务器,此时可以通过chrome打开http://localhost:8081/index.android.bundle?platform=android请求获取打包后的js文件,该文件是通过分析rn代码动态生成的,包含了应用中的全部逻辑.生成签名秘钥 用JDK自带的keytool工具生成证书: keytool -genkey -v -
2016-04-25 17:44:30 2631
原创 RN(react native)入坑指南-附录A,常用命令
创建一个叫AwesomeProject的项目react-native init AwesomeProject升级react-native项目到最新版本react-native upgrade启动打包服务react-native start在安卓上运行debug程序react-native run-android在安卓上运行debug程序react-native android在苹果上运行debug程
2016-04-22 22:05:46 551
原创 RN(react native)入坑指南-09,单元学习小结
现在我们已经做了一个简单的登录示例,它包含的知识点有页面布局、图标字体的使用、结构化开发、远程数据获取等。 代码在这里那么如果想让自己的水平提高一个层次,此时你应该注意到了要玩转RN你应该储备如下技能 1.Flex布局:Flex 布局教程 2.ES6语法:这里有一份 ES5 ES6对照表 下面是一点补充说明 完整教程可以看阮一峰的es6 入门教程 es6语法说明 …Obj ,三个点遍历
2016-04-21 15:45:26 734
原创 3.2跟我学Gradle-快速入门,Gradle的脚本结构
一个简单的Gralde脚本,或许包含如下内容,其中标明可选的都是可以删掉的部分 - 插件引入:声明你所需的插件 - 属性定义(可选):定义扩展属性 - 局部变量(可选):定义局部变量 - 属性修改(可选):指定project自带属性 - 仓库定义:指明要从哪个仓库下载jar包 - 依赖声明:声明项目中需要哪些依赖 - 自定义任务(可选):自定义一些任务//应用插件,这里引入了Gradl
2016-04-20 10:01:23 456
原创 3.跟我学Gradle-快速入门,了解创建和指定Gradle项目的标准目录结构
本文基于gradle2.12版本标准结构Gradle遵循COC(convention over configuration约定优于配置)的理念,默认情况下提供了与maven相同的项目结构配置 大体结构如下 - project root - src/main/java(测试) - src/main/resources - src/test/java(测试源码目录)
2016-04-19 12:38:10 3295
原创 RN(react native)入坑指南-08,如何加载远程数据
前言 通过前面的一系列联系现在页面布局技巧已经掌握,页面跳转已经搞定,页面之间的参数传递也已经搞定,我们的代码也进行了分层组织,但我们的应用到现在为止都是死的.如何让应用活起来读取远程数据呢.此篇我们便是用fetch来拉去远程数据 当然如果你想了解更多方式和内容欢迎阅读官方文档开始 fetch可以接受两个参数,fetch(string,object),第一个参数是请求的远程地址;第二个参数
2016-04-18 19:52:56 2215
原创 RN(react native)入坑指南-07,使用navigator实现页面跳转
前言 此文完全参考React-Native中文社区的博客新手理解navigator的教程而来,建议直接跳转链接进行详细学习,为防止链接失效或不可抗力因素无法访问,个人整理简单记录如下.开始由于前一篇文章将代码进行了分层整理,所以我们的index.android.js已经变得相对简洁 index.android.js'use strict';import React,{Navigator,AppR
2016-04-18 19:26:53 9964
原创 RN(react native)入坑指南-06,项目开发结构(代码分层组织)
随着代码复杂性的提高,对代码进行分层以及抽象是十分必要的.今天我们就对RN的项目结构进行简单的梳理. 这里主要是对样式文件和组件进行分离.可以以业务模块或者以页面的形式划分层级.具体结构如下 [ ] Project ROOT [ ] index.ios.js[ ] index.android.js[ ] android[ ] ios[ ] resources – 存放各类静态资源
2016-04-18 19:06:29 909
原创 RN(react native)入坑指南-05,使用图标字体Fontawesome
先决条件rn 0.23npm 3.7.3node 5.9.1system winXpython 2.7.x前言 开发过程中各式各样的图标自然少不了,如果能使用fontawesome等图标字体,自然可以带来极大的方便,然而在rn中并无法直接引用,还好已经有人做好了相关组件,react-native-vector-icons便是其中的佼佼者. 如果你对此组件感兴趣可以去github页
2016-04-16 15:42:12 8523
原创 RN(react native)入坑指南-04,布局容器
react native 支持采用flex方式布局。默认情况下如果不设置flex容器的宽度,那么flex容器会100%自适应屏幕宽度。 学习flex布局要明白两个概念:主轴和交叉轴。所谓主轴即容器延伸方向,默认是row(横向延伸),此时与水平垂直的轴即为交叉轴,反之亦然。 伸缩容器有以下六大属性 :1.flexDirection(主轴方向,子元素在父容器中的排列位置) flexDirec
2016-04-13 07:47:06 3056
原创 RN(react native)入坑指南-02,一个登录示例
Github上发现一只登录示例,拿来尝鲜,这里需要注意的坑有如下两点 1.关于注释,恩… // 单行 /*多行 */这个自然不用说,需要说的是,你得在外面加一层{}给包起来2.win下引用静态资源图片会出现引用到显示不出来的Bug(此bug0.13版本后已经修复),关于这个问题参考链接1,2里给出了不同的解决方案,我这里采用的是Stackoverflow的解决方式。 官方的说法
2016-04-09 15:52:15 742 1
原创 RN(react native)入坑指南-01,Hello RN,Windows下的环境搭建
写在前面目前最热的框架之一,可以通过更新远端JS,直接更新app, 用 JavaScript 调起 native 组件,将增强与高性能组件交给 native 来处理 ,相比其他hybrid框架而言并非通过webview来调用原生组件,而是直接调用操作系统自带的javascriptCore React Native only supports Android 4.1 and above由于Fac
2016-04-09 15:50:31 5876
原创 RN(react native)入坑指南-03,运行官方示例UIExplorer
学习RN,官方示例是必不可少的,研究和学习官方示例会带来许多帮助。 在搭建好rn环境之后就可以着手尝试运行官方示例来看下RN的各类组件了。 先决条件nodenpmRNGitGradleADK/SDK开始首先下载RN代码 Github: https://github.com/facebook/react-native 下载成功后 命令行切换到目标目录 执行npm install
2016-04-08 17:23:52 626
原创 2.[Gradle中文教程系列]跟我学Gradle-下载和安装Gradle
下载和安装.0.先决条件* 翻墙* 翻墙* 翻墙 1.5以上版本的JDK,Gradle会采用你环境变量中设置的JDK目录(可以用java -version进行检查),你需要配置环境变量 JAVA_HOME 并将它指向你的JDK安装目录. p.s:Gradle自带了Groovy库,所以无需事先安装Grvoovy,所有已经安装的Grvooy也将被Gradle忽略..1.下载 从Gralde官
2016-03-15 18:56:52 885
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人