maven中scope标签详解

前言 最近在做itoo的pom优化工作,发现对于maven依赖管理中的scope标签还是有不明白的地方,所以今天就来总结一下这方面的知识,scope在maven的依赖管理中主要负责项目的部署 maven的哲学在上次技术分享的时候也提到了:约定大于配置,所以在maven中,很多内容都有默认值,scope的默认值是compile,那么scope还能有哪些选项呢? scope的分类 1.compile:默认值 他表示被依赖项目需要参与当前项目的编…

Maven 3的10大新特性详解

未分类 , , , 发表评论
1、向后兼容   Maven创始人,Sonatype公司的CTO Jason van Zyl表示“Maven 3是为用户构建的”,很明显,他的意思是Maven 3.0将会全面取代Maven 2.x,Maven 3开发人员尽了最大努力,确保Maven 2.x用户顺利过渡到Maven 3.0,如果出现重复依赖,插件声明或未指定插件版本号,Maven 3.0将会发出警告,这里我强烈建议你在POM中修复这些问题,因为Maven 3的未来版本可能不会支持生成畸形的项目。我已经尝试…

android工程创建的jar包使用proguard进行混淆

混淆文件编写:保存为.pro文件 -injars  androidtest.jar【jar包所在地址】  -outjars  out【输出地址】 -libraryjars    'D:\android-sdk-windows\platforms\android-9\android.jar' 【引用的库的jar,用于解析injars所指定的jar类】   -optimizationpasses 5 -dontusemixedcaseclassnames 【混淆时不会产生形形色色的类名 】 -dontskipnonpubliclibraryclasses 【指定不去忽略非公共的库类。 】 -d…

Spark优化:禁止应用程序将依赖的Jar包传到HDFS

转: https://www.iteblog.com/archives/1173.html 每次当你在Yarn上以Cluster模式提交Spark应用程序的时候,通过日志我们总可以看到下面的信息: 21Oct 201414:23:22,006INFO  [main] (org.apache.spark.Logging$class.logInfo:59)  - Uploading file:/home/spark-1.1.0-bin-2.2.0/lib/spark-assembly-1.1.0-hadoop2.2.0.jar to hdfs://my/user/iteblog/...../spark-assembly-1.1.0-hadoop2.2.0.ja…

快速排序(二) jdk源码中如何优化快速排序

未分类 , , , , , 发表评论
     快速排序是一种相当棒的排序方案,相关理论内容可以参见快速排序(一) 原理介绍      在jdk的[java.util.Arrays]类中,有一个sort的函数,它实现对很多数据结构进行的排序方法,其中sort(int[] a)中主要使用的是优化后的快速排序法,本文正是基于此来讲解如何优化快速排序算法。   java源代码: public class SourceSort { public static void main(String[] args){ System.out.println("start"…

JVM优化配置

JVM优化配置        这里首先要说明的是这里提到的JVM是Sun的HotSpot JVM 5和以上的版本。性能优化在应用方面可以有很多手段,包括Cache,多线程,各种算法等等。通常情况下是不建议在没有任何统计和分析的情况下去手动配置JVM的参数来调整性能,因为在JVM5以上已经作了根据机器和OS的情况自动配置合适参数的算法,基本能够满足大部分的情况,当然这种自动适配只是一种通用的方式,如果说真的要达到最…

JVM内存逻辑结构

JVM(Java Virtual Machine),即Java虚拟机。JVM是一种用于计算机设备的规范,它是虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能实现的。因此,能在JVM中执行的并不一定是Java语言的编译后字节码,也可以是其它语言,比如Jyphon、JRuby以及Groovy等。 下图为Java程序员最为关注JVM的内存模型图: 可以看出,JVM大致可以分为以下几个内存区域: 程序计数器Java栈(STACK)本地方法…

JVM原理和优化

JVM工作原理和特点主要是指操作系统装入JVM是通过jdk中Java.exe来完成,通过下面4步来完成JVM环境. 1.创建JVM装载环境和配置 2.装载JVM.dll 3.初始化JVM.dll并挂界到JNIENV(JNI调用接口)实例 4.调用JNIEnv实例装载并处理class类。 在我们运行和调试Java程序的时候,经常会提到一个JVM的概念.JVM是Java程序运行的环境,但是他同时一个操作系统的一个应用程序一个进程,因此他也有他自己的运行的生命周期,…

浅谈SUN JVM内存管理与应用服务器的优化之 服务器内存分配与优化

引用出处:http://www.javaeye.com/topic/551085        上篇给大家介绍了SUN JVM的内存管理机制。本篇主要讲解与性能相关的JVM参数,怎样使用工具监控JVM的内存分配使用情况和怎样调整JVM参数让系统在特定硬件配置下达到最优化的性能。        通过上篇SUN JVM内存管理机制的介绍,大家都知道了SUN JVM内存分为永久存储区,伊甸园,幸存者1区,幸存者2区和养老区等几个区域。他们的作用以及垃圾回收…

Jvm堆内存的划分结构和优化,垃圾回收详解(详细解答篇)

在JVM中堆空间划分如下图所示 上图中,刻画了Java程序运行时的堆空间,可以简述成如下2条 1.JVM中堆空间可以分成三个大区,新生代、老年代、永久代 2.新生代可以划分为三个区,Eden区,两个幸存区 在JVM运行时,可以通过配置以下参数改变整个JVM堆的配置比例 1.JVM运行时堆的大小 -Xms堆的最小值 -Xmx堆空间的最大值 2.新生代堆空间大小调整 -XX:NewSize新生代的最小值 -XX:MaxNewSize新生代的最大值 -…

Java异常处理--将try/catch区段置于循环之外

  2010年6月11日 Java异常处理可能对代码性能产生负面影响,这与代码本身的组织有很大关系,也与JVM是否在运行期使JIT编译器进行代码优化有关,千万不要将异常用于程序的流程控制。         Java异常说白也是Exception对象,而创建对象是需要一些系统开销作为代价的,且并不便宜。我们需要尽量将Try/Catch区段置于循环体之外,因为当把它们写于循环体之内时,即便我们在Try/Catch中什么也不做,经测试…

JAVA虚拟机中的方法分派,内联,与解析

(1) 方法分派:是选择方法: 静态分派 动态分派   (2) 直接引用转为间接引用:是解析方法的符号引用 包括静态解析(类加载时)与动态链接(方法调用) 相应的方法称为非虚方法(包括FINAL方法)与虚方法; 所以两者处于不同层面   (3)方法内联:JIT优化 如果发现是非虚方法,可以直接内联。如果不是则可以采用“基于CHA(类继承关系分析)”的激进优化: 如果查出一个版本 1) 守候内联(逃生门) …

甲骨文的Java SE ARM的嵌入式多核Techcon

未分类 , , , , , 发表评论
就在时间的ARM ?技术大会(Techcon) - 上周发布了Java SE的甲骨文嵌入式ARM的支持6u21。 Java的硒的Java SE 6u21用于台式电脑和服务器,允许开发人员在他们的ARM嵌入式设备部署相同的完整的Java SE版本同步的最新版本6u21e作为他们的PC上找到。把钥匙,这个版本的新功能之一是多核心的ARMv7支持。在Java SE的多核心,如背景JIT编译和并行的垃圾收集功能现在可用于ARM的多核嵌入式系统越来越多地使用…

Java Hotspot VM [顶]

转自 水木社区JAVA精华区HotSpot VM 动态编译和Profiling 看见前面有人说Java是解释语言,突然觉得可以说说这方面。这里的能人很多,只当是抛砖引玉,错误之处还望指出。没错,Java是解释语言,但并不意味着它一定被解释执行。早期的虚拟机确实一条一条指令解释执行,但人们发现这样效率太低,不满足各种要求,因此出现了许多其它虚拟机,如JIT的虚拟机。HotSpot也是类似一种虚拟机,自从SUN买下后,…

根据J2ME(MIDP)虚拟机对程序编写的优化方式

根据J2ME(MIDP)虚拟机对程序编写的优化方式 李振鹏 版权所有,转载请注明出处      1、关于虚拟机 我认为,目前客户端虚拟机技术,应该说是发展到一个转折点,未来可能会出现重大的技术突破。目前无论是Java还是.Net基本上采用的都是分代式垃圾回收和分支预测JIT技术。因此目前这两个虚拟机的性能相差不是很大,因此对于程序的优化,基本上真对这两种技术来进行。 关于分代式垃圾回收 分代式垃圾回…