1

我正在尝试在码头和 sinatra 上使用 JODConverter。每当我启动我的 Jetty 服务器时,它在战争中部署了 sinatra 应用程序。我得到了这个例外(删除了很​​多杂物):

java.lang.IllegalStateException: invalid officeHome: it doesn't contain soffice.bin:

在我的 settings.yml 文件中,我有以下内容:

secret: Whatever_you_want_it_to_be
PARAMETER_OFFICE_PORT: 8100
PARAMETER_OFFICE_HOME: /Volumes/OpenOffice.org 3.3/OpenOffice.org.app/Contents/MacOS
PARAMETER_OFFICE_PROFILE: /Applications/OpenOffice.org.app/Contents/MacOS

这是最后两个目录的内容:

>ls '/Volumes/OpenOffice.org 3.3/OpenOffice.org.app/Contents/MacOS' 
about.png     crashrep      intro.png     sbase         sdraw         simpress      soffice       sofficerc     testtool      unopkg        urelibs
boot straprc   fundamentalrc resource      scalc         setuprc       smath         soffice.bin   swriter       unoinfo       unopkg.bin    versionrc

>ls /Applications/OpenOffice.org.app/Contents/MacOS                      
about.png     crashrep      intro.png     sbase         sdraw         simpress       soffice       sofficerc     testtool      unopkg        urelibs
bootstraprc   fundamentalrc resource      scalc         setuprc       smath          soffice.bin   swriter       unoinfo       unopkg.bin    versionrc

请注意,两个 ls 都在其中显示“soffice.bin”

更新:

我也试过这个:

> sudo chmod 777 '/Volumes/OpenOffice.org 3.3/OpenOffice.org.app/Contents/MacOS/soffice.bin'
Password:
chmod: Unable to change file mode on /Volumes/OpenOffice.org 3.3/OpenOffice.org.app/Contents/MacOS/soffice.bin: Read-only file system

我也尝试过使用 office_home 的第二个目录,反之亦然。没运气。

4

2 回答 2

2

如果有人仍然有同样的问题(和我一样),问题是,Mac 的 OfficeHome 参数必须指定文件夹“Contents”,而不是文件夹“Contents/MacOs/”。

JODConverter 正在检查以下是否存在:

new File(officeHome, "MacOS/soffice.bin")

所以 OpenOffice 主文件夹应该是/Applications/OpenOffice.org.app/Contents

于 2014-01-20T15:18:30.800 回答
1

听起来您要么缺少 JAR 文件,要么正在使用的 JAR 文件中可能存在冲突。虽然它不是 JRuby,但这篇文章应该会有所启发:http ://groups.google.com/group/jodconverter/browse_thread/thread/cdf6600288bfba5a/8ed4558cfde08e39

于 2011-11-04T02:56:51.607 回答