错误: Could not read CAPTCHA token file.There is a problem with the directory /si-captcha-for-wordpress/captcha/temp/.The directory is not found, a permissions problem may have prevented this directory from being created.

在自己的wordpress博客上安装了“si-captcha-for-wordpress”,并在该插件设置中设置了登录需要验证码,然后我自己退出后再尝试登录,结果发现怎么输入验证码都显示如下的错误:错误: Could not read CAPTCHA token file.There is a problem with the directory /si-captcha-for-wordpress/captcha/temp/.The directory is not found, a permissions problem may have prevented this directory from being created. Fixing the actual problem is recommended, but you can uncheck this setting on the si captcha options page: “Use CAPTCHA without PHP session” and the captcha will work this way just fine (as long as PHP sessions are working).

我自己把代码checkout出来,先尝试在/si-captcha-for-wordpress/captcha目录下添加了temp目录,commit以后,还是登录不进去,并且报一个有关权限的错误,但是sinaapp根本就不能设置访问权限的,所以基本判断,这个插件还是存在一定的兼容性问题。

最后没招了,只能把代码中的wp-contentplugins目录下的si-captcha-for-wordpress文件夹删除,删除后commit代码,然后尝试登录博客,登录成功,在控制台中进入插件管理界面,提示si-captcha-for-wordpress插件已经被禁用,但是找不到si-captcha-for-wordpress插件目录。

为了保证博客程序运行不要老是抛错,既然si-captcha-for-wordpress已经被禁用了,我于是又在代码中把si-captcha-for-wordpress目录还原了,再登录博客进入控制台,删除这个插件,就正常了。

后来我发现了一个验证码的插件,很不错的,推荐一下:Captcha plugin,我现在用的就是这个。

eclipse远程debug启动报错:JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:741]

参考http://1985wanggang.blog.163.com/blog/static/776383320120384555181/http://1985wanggang.blog.163.com/blog/static/776383320120384555181/上面的eclipse远程debug配置方式,发现如果在eclipse中关掉debug进程和远程的应用进程后,不能再启动应用了,报了如下的错:

FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)
ERROR: transport error 202: bind failed: Address already in use
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:741]

后来才发现任务管理器中有个java.exe的进程,这个进程就是jetty容器进程。手动杀掉这个进程后,才可以重新启动应用和debug功能。

网上有一些解决方法:

1. 设置hosts文件127.0.0.1与localhost的映射

2. 打开防火墙,让javaw.exe可以访问网络

3. 重启eclipse或者重启电脑

以上的几种方法都试过了,都不管用。

还是自己研究,经查,原来是很弱的原因:

关闭这个jetty的进程java.exe不是通过关闭jetty容器来实现的,而是用eclipse debug的客户端来关闭的。

解决方案:

在菜单栏Run–>Debug Configurations–>然后选择你的remote java application–>connect中有一个Allow termination of remote VM的复选框,勾上这个就行了。

然后启动了jetty容器后,再启动debug,此时就可以terminate debug来关闭jetty容器的进程了。(注意:不能直接在启动了jetty容器后,点Terminate来关闭jetty,这样不能关闭jetty,因为它是一个后台运行的java.exe进程在运行jetty容器,只能通过jpda的debug方式来远程关闭jetty容器,或者在任务管理器中干掉java.exe进程)

Eclipse Indigo中发生Unable to load default SVN client错误

可能大家在安装SVN的时候会出现“Unable to load default SVN client错误”,不要紧张,那是你机器上没有 JAVAHL 这个包, 这个是另外的一个开源组件。

最简单的解决办法:

其他解决方案:

官方参考:http://subclipse.tigris.org/wiki/JavaHL#head-7498d204a5be83e0e97d196ba75fc797d5f0c822