最近用到gearman。由于C语言的server一直编译不过去(貌似是boost的问题)。所以想到用java版本的server。但是没想到又遇到了一些问题。
首先运行命令:java -jar java-gearman-service-0.5.jar
结果出现如下提示:
java/nio/channels/CompletionHandler
java-gearman-service-0.5
usage:
java [jvm options] -jar java-gearman-service-0.5.jar [server options]
Options:
-p PORT --port=PORT Defines what port number the server will listen on (Default: 4730)
-l LEVEL --logger=LEVEL Specifies the logging level (Default: 0)
-v --version Display the version of java gearman service and exit
-? --help Print this help menu and exit
java/nio/channels/CompletionHandler
java-gearman-service-0.5
usage:java [jvm options] -jar java-gearman-service-0.5.jar [server options]
Options: -p PORT --port=PORT Defines what port number the server will listen on (Default: 4730) -l LEVEL --logger=LEVEL Specifies the logging level (Default: 0) -v --version Display the version of java gearman service and exit -? --help Print this help menu and exit
费了好大劲才意识到这个问题出在哪儿。这还是在我将这个包导入到eclipse的时候发现的,发现源码里竟然有错误,这怎么可能的。经查找,发现是由于jdk版本的问题。我本地机器上装的是jdk1.6(对应的java6),而gearman的server需要jdk1.7(对应java7)才能运行。于是立即下载新版本的java运行。结果这次倒是不会出现这个问题了,但是新的问题出现了。这次报的错误是:
/usr/local/jdk1.7.0_01/bin/java -jar java-gearman-service-0.5.jar
Error: dl failure on line 875
Error: failed /usr/local/jdk1.7.0_01/jre/lib/i386/server/libjvm.so, because /usr/local/jdk1.7.0_01/jre/lib/i386/server/libjvm.so: cannot restore segment prot after reloc: Permission denied
经网上搜索,得到是因为SELINUX的问题。有兴趣的可以去网上查一下这个。解决问题的步骤如下:
首先编辑配置文件:/etc/selinux/config
找到如下内容:
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
# SELINUX=enforcing
将# SELINUX=enforcing的注释去掉,并在下边增加这样一行:SELINUX=disabled
保存退出,结果还是报相同的错误。然后运行如下命令:
chcon -t texrel_shlib_t /usr/local/jdk1.7.0_01/jre/lib/i386/server/libjvm.so
注意,错误提示中提示哪个文件出错就在后边写上哪个文件。
结果终于可以正常运行了。但是在编译一个java的gearman的cllient的时候还是提示这个错误。于是运行如下命令:
/usr/sbin/setenforce 0
分享到:
相关推荐
error :/usr/lib/libjvm.so: cannot restore segment prot after reloc: Permission denied . use the command: chcon -t textrel_shlib_t /usr/lib/libjvm.so 这是官方的提示 简单的做法是 setenforce 0 ok,java...
adb错误解决方法
群晖restore工具
tsm restore命令的详细解释! Therestorecommandobtainscopiesofbackupversionsofyourfiles from aTivoli®StorageManagerserver,orinside abackup set. Torestore files, specifythe directoriesorselectedfiles, ...
讲解使用canvas.save()和canvas.restore()的demo
tensorflow model save and restore example
restore-symbol
[量产部落]Restore_v3.26.0.0
在sql server 2008 r2 版本中还原从sql server 2005备份出来的数据库时,提示错误:RESTORE DATABASE 正在异常终止。 (Microsoft SQL Server,错误: 3154)。
我给大家说一种简单,免费的解决办法来解决这个问题,这个是用到了AD墓碑时间的概念,Windows Server 2003的墓碑时间是60天,从Windows Server 2003 SP1开始,微软把AD的墓碑时间调整为180天,也就是说我们在180天...
RESTORE DATABASE命令还原SQLServer 2005 数据库
群联PS2251-03主控是USB3.0高速U盘使用的主控,但只要是U盘总会因为这样那样的问题导致无法格式化,写保护,打不开等问题,这个时候我们会想到用群联量产工具来量产修复解决,但如果连量产也解决不了怎么办呢?...
Restore、极速还原
Restore可低级格式化你的U盘并恢复出厂默认状态,使用前要备份U盘中的数据。Format用于格式化你的U盘为FAT/NTFS文件系统,同样操作前要备份数据。群联官方发布的Phison Format Restore修复工具,版本是3.15应该是...
Windows版本从很早之前就已经有“系统还原”这一项功能,当我们系统出了问题时,若实在没有办法解决,我们通常都会选择重装系统,或者是从自己创建的系统还原点恢复系统,不过系统还原点很遥远了,很可能会连带一些...
db2 backup restore
windows 开机自动还原,适合测试病毒和系统软件. 虚拟机可用.不可多得
恢复删除(delete) 操作的数据,通过日志文件 Restore delete of data from sqlserver
android中canvas的save和restore用法 源码 测试代码
ghost restore.bat ghost restore.bat ghost restore.bat ghost restore.bat