Apache Ant

了解Android Studio中的Gradle

我是研究僧i 提交于 2020-10-21 21:14:06
Gradle是啥? gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。 所谓的构建过程就是:编译,测试,依赖管理,打包,部署。以前我们开发是手动导入jar包的,类似于面向过程,一步一步来,缺什么包就导什么包,很麻烦,容易出错,jar包版本还不统一,需要关心jar包与jar包之间的依赖。通过采用gradle的构建方式,只需通过complie xxxxx引入一个jar包,然后这个jar包所依赖的其他jar包gradle会自动帮引入,无需关心jar包与jar包之间的依赖,在什么地方以什么形式引入外部jar包,都委托给gradle管理了,体现了面象对象的思想,无需关心内部实现过程,直接引入就可。(注意Gradle不是一种编程语言,它不能帮你实现软件中的任何实际功能) 自动化构建工具有哪些? Ant 2000年诞生,主要是编译代码,测试代码。 Maven 2007年诞生,主要是编译测试,依赖管理。 Gradle 2012年诞生 主要是是编译测试,依赖管理,DSL自定义扩展任务。 Android Studio中的默认工具是Gradle Android studio的默认插件是Gradle,或许是因为Gradle编译速度比Maven 快很多,而且Gradle完全兼容kotlin语言。当我们新建一个android 项目,gradle已经默认配置好了

GARMIN推出铁三GPS智能腕表Forerunner745和HRM-PRO心率带

久未见 提交于 2020-10-21 18:32:18
Garmin今天宣布推出Forerunner745,这是一款专为跑步和铁人三项打造的GPS 智能手表 ,用于查找详细的训练数据,设备上的锻炼,智能腕表功能等。无论是跑步,骑行还是游泳,Forerunner745都会统计并分析数据,以帮助用户达成目标。Forerunner745具有铁人三项,游泳池游泳等数十种运动模式,运动员可以完善自己的训练计划,并可以在比赛或专项训练中通过按一下按钮在各种活动之间无缝切换。 Garmin全球销售副总裁DanBartel表示:“多年来,运动员在开始训练时就一直使用Forerunner735XT,我们很高兴Forerunner745带来的新功能和更新。“ Forerunner745可以跟踪跑步,自行车和长时间游泳,它结合了运动员所需要的性能监测工具,每日建议的锻炼方法以及改进的恢复时间和健康追踪功能,可以为跑步者提供帮助铁人三项运动员打出了个人最好的成绩。” 为了帮助运动员更好地为比赛或训练周期做准备,Forerunner745内置FirstbeatAnalytics提供的关键生理指标数据,例如VO2max,训练负荷,训练状态以及有氧和无氧训练效果。运动员还可以根据当前的训练负荷和最大摄氧量来获得设备上跑步和骑车的每日训练建议。通过添加跑步动态传感器或兼容的心率带(如新型HRM-Pro),跑步者可以在手表上查看所有六个跑步动态指标(包括步频,步幅等)

蚂蚁算法的应用(01背包、函数极值、TSP)

╄→гoц情女王★ 提交于 2020-10-19 05:01:10
蚂蚁算法的应用(01背包、函数极值、TSP) ​ 笔者是一位大一的萌新,这篇算法是自己查阅文献以及参考别人的博客再加上自身的理解写出来的。有错误的地方希望及时指正。这篇文章我使用的是Matlab,后续会给出python版本。以后会陆续出其他的优化算法以及人工智能算法,机器学习,深度学习等。 这是我在 b站的详细讲解 目录: 原理 应用_TSP 应用_函数极值 应用_01背包 1. 原理 背景介绍 ​ 在了解蚂蚁算法前,首先当然是了解一下算法的背景。 在自然界中,蚂蚁总能找到一条从蚂蚁洞到食物的最短路径,这是人们观察出来的结果。这是为什么呢,因为有一个叫信息素的物质的存在。蚂蚁在运动过程中,能够感知这种物质的存在和这个物质的浓度,同时也会释放这种物质。 原理简介 ​ 在初始阶段,环境中的信息素浓度为0,此时,蚂蚁会随机选择路径到食物。如下图所示: 随后的蚂蚁,根据之前路径上的信息素,选择自己走哪一条路。 划重点! 信息素是一个随时间挥发的物质 。假设每只蚂蚁在单位时间留下的信息素相同,那么,路径越短,残留的信息素也就越多。蚂蚁选择这条路的概率也就越大。这条路上的蚂蚁也就越来越多,产生的信息素也越来越多了。因此形成了 正反馈 。最终得出最优路径。 基本蚂蚁算法的参数和公式 以TSP问题为例子来讲解。 首先是初始化参数: m:蚂蚁数量,约为城市数量的1.5倍。如果蚂蚁数量过大

深度剖析分布式单点登录框架XXL-SSO

我怕爱的太早我们不能终老 提交于 2020-10-15 20:47:45
于2018年初,在github上创建XXL-SSO项目仓库并提交第一个commit,随之进行系统结构设计,UI选型,交互设计…… 于2018年初,在github上创建XXL-SSO项目仓库并提交第一个commit,随之进行系统结构设计,UI选型,交互设计…… 于2018-12-05,XXL-SSO参与" 2018年度最受欢迎中国开源软件 "评比,在当时已录入的一万多个国产开源项目中角逐,最终排名第55名。 于2019-01-23,XXL-SSO被评选上榜" 2018年度新增开源软件排行榜之国产 TOP 50 "评比,排名第8名。 至今,XXL-SSO已接入多家公司的线上产品线,接入场景如电商业务,O2O业务和核心中间件配置动态化等,截止2018-03-15为止,XXL-SSO已接入的公司包括不限于: 湖南创发科技 深圳龙华科技有限公司 摩根国际 印记云 一、简介 1.1 概述 XXL-SSO 是一个分布式单点登录框架。只需要登录一次就可以访问所有相互信任的应用系统。 拥有"轻量级、分布式、跨域、Cookie+Token均支持、Web+APP均支持"等特性。现已开放源代码,可以做到开箱即用。 1.2 特性 1、简洁:API直观简洁,可快速上手; 2、轻量级:环境依赖小,部署与接入成本较低; 3、单点登录:只需要登录一次就可以访问所有相互信任的应用系统。 4、分布式

Ant-Design-Vue中关于Table组件的使用

时光毁灭记忆、已成空白 提交于 2020-10-13 06:51:00
1. 如何自定义表格列头: < a-table :columns ="columns" :dataSource ="dataSource" > < span slot ="customTitle" >< a-icon type ="smile-o" /> Name </ span > </ a-table > const columns = [   {  dataIndex: 'name' ,    // 自定义列表头,则不能设置title属性 align: 'left' , slots: { title: 'customTitle' }   // 在这里定义一个slots属性,并设置一个title属性 } ] 页面将会渲染为如下: 2.如何设置自定义单行样式 < a-table :columns ="columns" :dataSource ="dataSource" > < span slot ="action" slot-scope ="record, index" >  // 这里传入的值分别是:record:当前行的原始数据,index:当前行的索引 < a @click ="handleEdit(record.key)" > 编辑 </ a > </ span > </ a-table > const columns = [ { title: '菜单名称'

云计算的下半场 —— Serverless 2020 发展解读

跟風遠走 提交于 2020-10-10 02:00:10
2008 年可以说是大家比较公认的云计算元年,因为在这一年中越来越多的行业巨头和玩家注意到这块市场并开始入局。至今已经过去了十多年,在这短短十几年的发展过程中,云计算持续爆发,落地应用不断涌现,对于行业的变革力量正逐步凸显。 但是力的作用是相互的,在改变行业的同时,行业也在改变着你。由于市场对于高效、快速的需求越来越重,因此能否让开发者专心在业务逻辑和功能实现上,能否淡化前后端开发界隙并提升研发效率,Serverless 去服务器化可以说是当下的不二选择。 Serverless 可以使几乎所有的互联网开发者以及互联网应用都从中受益,因为没有人会拒绝高效率和低成本,而 Serverless 则在开发成本、团队协作、高扩展性、计算资源等层面拥有众多优势,是实现高效与低成本的最佳方式之一。 这也是当下众多企业选择 Serverless 的原因所在,因此作为当前时代下的开发者,了解 Serverless 背景、学习 Serverless 实践就显得尤为重要。而现在就有这样一个机会, 6 月 19 日(周五)全天,全球最负盛名的 Serverless 大会 —— ServerlessDays 将首次进入中国 。 为什么推荐你参加此次大会 如果你是 Serverless 爱好者,如果你是互联网前沿技术的观察者,如果你在工作中需要用到 Serverless,如果你想要先人一步掌握关于

Tomcat源码Idea maven启动

你。 提交于 2020-10-05 06:28:02
一、下载tomcat源码 https://github.com/apache/tomcat/tree/8.5.x 二、建立pom 1 <? xml version="1.0" encoding="UTF-8" ?> 2 < project xmlns ="http://maven.apache.org/POM/4.0.0" 3 xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" 4 xsi:schemaLocation ="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > 5 6 < modelVersion > 4.0.0 </ modelVersion > 7 < groupId > org.apache.tomcat </ groupId > 8 < artifactId > Tomcat8.5 </ artifactId > 9 < name > Tomcat8.0 </ name > 10 < version > 8.0 </ version > 11 12 < build > 13 < finalName > Tomcat8.5 </ finalName > 14 < sourceDirectory >

Spring Security 中如何让上级拥有下级的所有权限?

为君一笑 提交于 2020-10-05 06:18:29
本文基于当前 Spring Security 5.3.4 来分析,为什么要强调最新版呢?因为在在 5.0.11 版中,角色继承配置和现在不一样。旧版的方案我们现在不讨论了,直接来看当前最新版是怎么处理的。 1.角色继承案例 我们先来一个简单的权限案例。 创建一个 Spring Boot 项目,添加 Spring Security 依赖,并创建两个测试用户,如下: @Override protected void configure(AuthenticationManagerBuilder auth) throws Exception { auth.inMemoryAuthentication() .withUser("javaboy") .password("{noop}123").roles("admin") .and() .withUser("江南一点雨") .password("{noop}123") .roles("user"); } 然后准备三个测试接口,如下: @RestController public class HelloController { @GetMapping("/hello") public String hello() { return "hello"; } @GetMapping("/admin/hello") public String

Jmeter+Ant+Jenkins --接口自动化实现

不羁的心 提交于 2020-10-04 15:47:44
1.安装Jmeter 1.1 JDK 安装 笔者提供 : https://pan.baidu.com/s/1GJO_9OJN6FRoFqqOrbLvjA 提取码:8dkK 官方下载地址: https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html 相关环境设置,在这里不做赘述 1.2 Jmeter 安装 下载地址: http://jmeter.apache.org/download_jmeter.cgi 下载后解压即可使用,详细环境设置在这里不做赘述,可百度Jmerter安装查看相关说明 安装ANT 下载地址: http://ant.apache.org/bindownload.cgi 下载后解压到指定位置即可,如: 环境变量配置(window) 新增 ANT_HOME 变量添加:D:\apache-ant-1.10.3 Path 变量中添加:%ANT_HOME%\bin classpath 变量中添加: %ANT_HOME%\bin 注意:变量之间用;分割 安装验证 在命令行输入 ant -v 出现对应版本信息则已安装成功 注意:环境配置中如果设置成:path:%ANT_HOME%\bin (为了方便在dos环境下操作),如果环境配置不成功,需要把地址换成为 D:\apache-ant-1

查看jar包下java类,查看java类在那个jar包

扶醉桌前 提交于 2020-10-04 00:37:30
这两个工具的作用: 找某个jar包下某个class某个方法 查看java类在那个jar包下。 解决:服务器上java程序报错:ClassNotFoundException,NoClassDefFoundError下边有补充解析。 只需要依赖jdk,直接复制这个类去某个机器上跑一下就可以,方便快捷 查看java类在那个jar包 java添加classpath linux示例:添加 -classpath xxx/xxx.jar:xxx/xxx.jar 如果是windows用;分割,如果是mac和linux用:分割 java编译 javac -d . xxx.java 点代表当前目录如果没报名可以不加-d . 示例 javac -d . Test.java 运行 java com.dxz.chama.javaagent.asm.Test 如果添加class资源运行 java -classpath xxx/xxx.jar:xxx/xxx.jar com.dxz.chama.javaagent.asm.Test package com.dxz.chama.javaagent.asm; import java.net.URL; /** * description: 查找某个类在那个jar包下 * * @author: he QQ: 905845006 * @email: 905845006