勤&快

问题其实就是你期望的东西和你体验的东西之间的差别
随笔 - 55, 文章 - 0, 评论 - 68, 引用 - 0
数据加载中……

ubuntu下搭建open offcie开发环境

最近在使用openoffice(以后简称oo)的sdk开oo的客户端,其实主要目的就是使用oo sdk编程实现读取各种格式的文档,包括MS的,oo自己的,从文件输入的,从clipboard输入的。
openoffice 开发指南,首推oo的官方Developers_Guide,介绍的很全面,唯一的缺点就是太长了。可以当成手册来看。可以通过分析sdk中的例子,快速的掌握如何使用这个sdk。本文主要参考Developer's Guide中的第一章,以及sdk安装后的帮助手册。
使用ubuntu 8.04,搭建了oo的开发环境。

1. 安装一些必须的软件
  • jdk,jre
    • sudo apt-get install sun-java6-jre sun-java6-jdk
  • openoffice
    • 这个一般ubuntu都是默认安装好的。
  • openoffice-java-common
    • 这个很重要,ubuntu中安装的oo不包括java开发库,所以要自己手动安装一下。不然编译的时候就会提示找不到类。
    • sudo apt-get install openoffice.org-java-common
  • make, g++, gcc, zip
    • 这几个命令一般都是安装好的,如果没有,可以使用apt-get安装
2. 安装sdk
  1. 下载sdk
    1. 因为现在oo的最新稳定版是2.4,所以我们下载sdk 2.4, 下载地址, 根据自己的操作系统,选择不同的版本,这里我下载的是OOo-SDK_2.4.0_LinuxIntel_install.sh
  2. 在ubuntu命令行下运行这个shell文件,在/var/tmp/unpack_openofficeorg/RPMS目录下得到一个openoffice.org-sdk-2.4.0-9286.i586.rpm文件。使用alien命令将rpm文件转为deb文件,然后安装这个deb文件。如果提示权限不够,请修改一下文件权限。
    1. sudo alien  openoffice.org-sdk-2.4.0-9286.i586.rpm
    2. sudo dpkg -i openoffice.org-sdk-2.4.0-9286.i586.deb
  3. 设置环境变量
    1. sdk安装地址是/opt/openoffice.org2.4_sdk,进入这个目录
    2. 运行./setsdkenv_unix
    3. 填写相应参数,其中officehome,填写/usr/lib/openoffice,java jdk目录是/usr/lib/jvm/java-6-sun,其他基本都是默认值
    4. 完成之后,会在~/usrname/openoffice.org2.4_sdk下生成环境变了设置脚本,每次编译oo程序前,运行source ~/openoffice.org2.4_sdk/setsdkenv_unix.sh就可以了。
  4. 安装完成之后,请认真阅读/opt/openoffice.org2.4_sdk/index.html中的内容。
3. 运行sdk中的例子
  1. 打开终端,设置环境变了source ~/openoffice.org2.4_sdk/setsdkenv_unix.sh
  2. 进入sdk的example目录,cd /opt/openoffice.org2.4_sdk/example/java/目录,这个目录里面有很多种类的例子,比如我们进入Text目录
  3. 到Text目录下,运行make命令,就会自动编译所有程序。目标程序存放地址也会显示出来。
  4. 根据提示,可以运行make *****.run 命令,启动相应的example程序。或者,到输入目录下,运行 java -jar ****.jar
  5. 通过阅读exmaple代码,可以快速的学会如何使用oo api, api的文档在/opt/openoffice.org2.4_sdk/docs中,其中
    1. common是通用文档,这里面可以找到大部分的使用方法,以后多多查阅
    2. java,是java专用的api
4. 安装netbeans作为openoffice开发ide

主要参考使用netbeans开发openoffice程序,使用netbeans提供的openoffice插件。
只是要注意
  1. 配置路径的时候,openoffice路径是/usr/lib/openoffice,openoffice sdk路径是/opt/openoffice.org2.4_sdk
  2. 建立工程之后,运行,会提示“no executable openoffice",解决方法是在工程的library中加入/usr/lib/openoffice/program
也可以使用eclipse,但是我一直没有运行成功。参考这里这里

5. 存在的问题
  1. oo编写的程序,需要一个可以运行的oo才可以执行,这个oo可以是本地的,也可以是远程的。就是相当于一个服务器。那么,这样如何在软件的发行版中加入一个完成的oo?也许说明,这个软件要依赖于一个完成的oo,所以请用户提前安装?
  2. 在netbeans下开发的oo程序,打包为jar文件之后,不能正常运行。解决方法有两个
    1. 通过分析例子的编译脚本/opt/settings/std.mk文件,发现打包后的jar中多了一些文件,包括win/unowinreg.dll,/com/sun/star/lib/loader/下的一些类。这些类估计是寻找oo程序的。只需要在jar中添加这些文件,就可以正常运行了。
    2. 参考这个页面 , 使用一个库来连接oo
6. 有用的网页
  1. 保存文件的操作
  2. 文件另存为/转换的操作
  3. 操作粘贴版的操作
  4. 使用open office入门级实例程序

posted on 2008-05-31 15:18 daning 阅读(616) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: