ExceptionInInitializerError和NoClassDefFoundError和ClassNotFoundException的区别

ExceptionInInitializerError和NoClassDefFoundError

以前碰到几次NoClassDefFoundError异常,网上都说是因为静态语句块出现异常导致,但是我总是无法通过自己编写得简单事例代码重现(我自己写的代码总是抛出ExceptionInInitializerError,而不是NoClassDefFoundError),直到最近从其他文章看到了一段重现代码才了解了。先看下面可以抛出NoClassDefFoundError异常的代码:

可以看到,Bar和Foot两个写到一个文件F[……]

全文阅读

linux管理多个ssh公钥密钥

很多网上免ssh密码使用git的命令都没有考虑到多个公钥密钥的情况,这里搜集并整理一下管理多个ssh公钥密钥的步骤。

首先生成公钥和密钥,默认情况公钥的文件名比密钥末尾多.pub,下面以管理coding.net和github.com两个git仓库的ssh公钥密钥为例(如果是在windows下,请安装git客户端然后使用git bash来键入下面的命令;如果是在linux下,则直接使用终端即可):

这个命令直接通过-f参数指定了密钥和公钥的文件名,比如-f ~/.ssh/id_rsa.coding,其生产的密钥为~/.s[……]

全文阅读

input不能输入空格解决方法

最近发现页面中一个有suggest功能的input不能输入空格(这个input的suggest功能用到了bootstrap的dropdown功能),但是可以输入其他的字符,非常奇怪,我自己的js代码里面根本没有对输入做过任何的处理,而且输入空格时文本框中的内容没有任何变化。

只能猜测可能是其他的js中对所有的dropdown功能的input都做了按键监听和屏蔽。

无耐之下,用排除法,一个个的把页面中引入的js移除,查看输入框能否输入空格,经测试发现当删除了bootstrap的js引入后,input就可以输入空格了,说明问题在bootstrap.js里面,所以进到源码里面看了看,发现[……]

全文阅读

skype在红米note上打不出电话

MIUI6

MUI6

前不久放出来的小米note没有抢到,于是干脆买了个红米note增强版,用起来还不错,所以软件都正常,但是唯独skype在红米上打不出电话,很奇怪,百度了一下搜集了一些意见,有人说要下载官方版本的skype,不要下载小米应用商店的,于是尝试了一下,发现确实官网的可以电话,看来如果下次再碰到应用超市的不能正常使用,就直接用浏览器进入官网直接下载安装,或者百度,或者在小米论坛里看看帖子。

原创文章:skype在红米note上打不出电话,转载请注明[……]

全文阅读

精品工具收集(一)

精品工具收集(一)

精品工具收集(一)

收集了一些平时开发工作中好用的软件,我一直在用的,帮助我提升效率。现在分享给大家:

  1. 免费好用的数据库的客户端:heidisql:http://www.heidisql.com/download.php,免费而小巧
  2. 免费好用的SSH客户端:xshell:http://rj.baidu.com/soft/detail/15201.html?ald,免费的哦
  3. xshell经典配色方案:http://blog.csdn[……]

全文阅读

红杏出墙(翻墙软件)

红杏——chrome浏览器翻墙插件以前就知道google chrome的官方文档是不能在国内访问的,但固执的我还是想试试,事实证明GFW把他们的事情做得很持久,仍然不能访问。正好我急着想看chrome的官方文档,没办法,只能把曾经用不了的goagent重新股搞起来,之前goagent没用起来是因为很有段时间没有更新goagent的local和server到最新的版本了,结果整了半天,发现goagent的server要upload首先需要翻墙!(我记得以前是不用翻墙的,可能那时候gae还没有完全被墙)这简直是一个悖论。我本来是想翻墙而装goagent的,结果要想装goagent首先需要翻墙。

这顿时让我绝望了,于是问同事要[……]

全文阅读

小米1内存极致优化

之前有篇文章《小米1升级最新miui后很卡的请看这里》,但是小米1 miui v4或者v5,在使用过程中仍然会随着多个软件的开启而内存吃紧,仍然让大家感觉很卡顿,如果你对软件的响应速度完全受不了了,那么你可以选择继续往下看。

往往大家会卡顿或者使用消耗内存比较多的软件时,选择按住home键来清理内存,但是其实很多软件背后有后天进程在运行,就算看起来清理掉了,其实内存消耗没有减少多少;而且当你通过按home键后切换其他软件时,之前打开的软件没有真正关闭,他们仍然占据着内存,我想其实大家大部分时候,一小段时间里面都只用一个软件吧。

如果你想让自己使用单个app时比较顺畅,不在乎软件切换[……]

全文阅读

Felix iPOJO中@ServiceController和@Controller的区别

@ServiceController和@Controller从字面上看起来很像,都是用在类的boolean类型的field上,但是其作用完全不同。@ServiceController是OSGI容器的角度的,而@Controller是iPOJO容器角度的,这两个annotation给了iPOJO中的instance一个自己改变自己状态的能力。

在机制上

@ServiceController

@ServiceController当这个field被设置为false的时候,这个service会从服务注册中心注销(unregister);当这个field被设置为true的时候,这个servic[……]

全文阅读

java.lang.UnsupportedOperationException at javax.crypto.CipherSpi.engineGetKeySize

Unlimited Strength Java(TM) Cryptography Extension (JCE)

Unlimited Strength Java(TM) Cryptography
Extension (JCE)

java.lang.UnsupportedOperationException at javax.crypto.CipherSpi.engineGetKeySize的原因是默认的jdk的key长度有128bit限制,所以需要把这个长度限制放宽。官方有个无长度限制版的JCE jar包,下载地址:

jdk6:http://www.o[……]

全文阅读

如何自定义eclipse代码格式化(Ctrl+Shift+F)

使用eclipse的都知道它有一个快捷键Ctrl+Shift+F,用来格式化代码,但是eclipse默认自带的格式化效果也有不完美的地方。所以有时候你需要自定义eclipse代码格式化,下面举例说明:

java代码的多个属性默认情况是左对齐的,看起来效果是层次不齐的,见下图:

java代码格式化——多个属性层次不齐

java代码格式化——多个属性层次不齐

如果对齐是什么样的效果呢:

全文阅读