linux环境下安装 openOffice 并启动服务
一、背景故事
这两天遇到一个大坑,客户要做office 文档在线预览功能,于是乎就要把office文档转换成pdf交给前端显示。
在某度找了一圈都说openOffice+jodconverter 可以搞定这个事情。代码倒是很好找,不过版本很多,各类jar包也很多,但尝试下来发现,转化效果很一般,复杂的excel也无法成功。有同事建议放到服务器上效果可能好些,于是就开始折腾在服务器上安装OpenOffice这个事情。网上各种找大神的博文,发现安装起来不是很顺畅,就写了这篇随笔,记录一下,遇到的问题,方便自己以后查看。
二、操作步骤
1.http://www.openoffice.org/zh-cn/download/ 去官网链接下载linux版本的openOffice 以4.1.5 版本为例。
2.将压缩包上传至服务器上,并进行解压安装。
1 tar -zxvf 对应的压缩包名字 2 cd 进入解压后的 /zh-cn/RPMS 3 yum localinstall *.rpm 4 cd desktop-integration 5 rpm -ivh openoffice4.1.5-redhat-menus-4.1.5-9789.noarch.rpm
默认会安装在/opt目录下。
3.启动服务
1 /opt/openoffice4/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard 临时启动 2 nohup /opt/openoffice4/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard & 后台启动
端口号根据自己项目实际来确定。
后台启动会一直占用内存,据各路大神说 大概100M,我自己没测过具体值不清楚。
有的程序是需要预先启动openOffice 服务的,有的则在代码里自己启动服务。
4.查看进程
netstat -lnp |grep 端口号
大概显示成这样就算启动完了。
tcp 0 0 127.0.0.1:8100 0.0.0.0:* LISTEN 14362/soffice.bin
三、闲聊
openOffice转转word文档效果不错,转Excel的话就真的效果不行,简单的Excel能处理处理,复杂的就很慢很慢,而且效果极差。再说,实际上微软自己的office软件转pdf的效果也很差。
四、问题
1.装完openoffice后启动服务可能会报错:no suitable windowing system found, exiting
从字面上的意思就是缺少一个窗口化的系统。。所以就安装一个。
yum groupinstall "X Window System"