如何编译 xslt2-transformer.oxt LibreOffice 扩展
How to compile xslt2-transformer.oxt LibreOffice extension
我正在尝试编译 xslt2-transformer 扩展,因为我在网站上找不到 LibreOffice 扩展 xslt2-transformer.oxt
(如果有人有,欢迎他)。
为了从源代码构建,我是这样进行的:
$ git clone https://github.com/dtardon/xslt2-transformer.git
$ cd xslt2-transformer/
$ make
我在构建过程中遇到了很多(类似的)错误:
mkdir -p build/classes && \
javac -d build/classes -source 1.5 -target 1.5 \
-cp "external/saxon9.jar:" com/sun/star/comp/xsltfilter/Base64.java \
com/sun/star/comp/xsltfilter/XSLTFilterOLEExtracter.java \
com/sun/star/comp/xsltfilter/XSLTransformer.java && \
touch build/javac.done
com/sun/star/comp/xsltfilter/XSLTFilterOLEExtracter.java:27: error: package com.sun.star.bridge does not exist
import com.sun.star.bridge.XBridgeFactory;
^
com/sun/star/comp/xsltfilter/XSLTFilterOLEExtracter.java:28: error: package com.sun.star.bridge does not exist
import com.sun.star.bridge.XBridge;
^
[...]
symbol: class XConnector
location: class XSLTFilterOLEExtracter
com/sun/star/comp/xsltfilter/XSLTFilterOLEExtracter.java:321: error: cannot find symbol
XConnector xConnector = UnoRuntime.queryInterface(XConnector.class, x);
^
symbol: class XConnector
location: class XSLTFilterOLEExtracter
100 errors
1 warning
make: *** [build/javac.done] Error 1
我认为我的 CLASSPATH
不是最新的。我需要添加 com.sun.star
包和 类.
由于我(目前)在 OSX,我的 LibreOffice 安装在 /Applications/LibreOffice.app
,我在 ./Contents/Resources/java
.
找到了一些 类
所以我这样更新 CLASSPATH
:
export CLASSPATH=/Applications/LibreOffice.app/Contents/Resources/java:$CLASSPATH
但是,我也有同样的错误。我该如何解决?
编辑 1 将一些罐子放入 CLASSPATH
我试过了:
$ export CLASSPATH=/Applications/LibreOffice.app/Contents//Resources/java/ridl.jar:.
我的错误较少。
编辑 2 构建成功!
我最终将以下 jar 文件添加到 CLASSPATH
:
/Applications/LibreOffice.app/Contents//Resources/java/ridl.jar
/Applications/LibreOffice.app/Contents//Resources/java/jurt.jar
/Applications/LibreOffice.app/Contents//Resources/java/juh.jar
/Applications/LibreOffice.app/Contents//Resources/java/unoil.jar
我得到了扩展名!
最后,为了从源代码构建,我是这样进行的:
git clone https://github.com/dtardon/xslt2-transformer.git
cd xslt2-transformer/
export CLASSPATH=/Applications/LibreOffice.app/Contents/Resources/java/ridl.jar:\
/Applications/LibreOffice.app/Contents/Resources/java/jurt.jar:\
/Applications/LibreOffice.app/Contents/Resources/java/juh.jar:\
/Applications/LibreOffice.app/Contents/Resources/java/unoil.jar
make
结果是build/xslt2-transformer.oxt
.
我正在尝试编译 xslt2-transformer 扩展,因为我在网站上找不到 LibreOffice 扩展 xslt2-transformer.oxt
(如果有人有,欢迎他)。
为了从源代码构建,我是这样进行的:
$ git clone https://github.com/dtardon/xslt2-transformer.git
$ cd xslt2-transformer/
$ make
我在构建过程中遇到了很多(类似的)错误:
mkdir -p build/classes && \
javac -d build/classes -source 1.5 -target 1.5 \
-cp "external/saxon9.jar:" com/sun/star/comp/xsltfilter/Base64.java \
com/sun/star/comp/xsltfilter/XSLTFilterOLEExtracter.java \
com/sun/star/comp/xsltfilter/XSLTransformer.java && \
touch build/javac.done
com/sun/star/comp/xsltfilter/XSLTFilterOLEExtracter.java:27: error: package com.sun.star.bridge does not exist
import com.sun.star.bridge.XBridgeFactory;
^
com/sun/star/comp/xsltfilter/XSLTFilterOLEExtracter.java:28: error: package com.sun.star.bridge does not exist
import com.sun.star.bridge.XBridge;
^
[...]
symbol: class XConnector
location: class XSLTFilterOLEExtracter
com/sun/star/comp/xsltfilter/XSLTFilterOLEExtracter.java:321: error: cannot find symbol
XConnector xConnector = UnoRuntime.queryInterface(XConnector.class, x);
^
symbol: class XConnector
location: class XSLTFilterOLEExtracter
100 errors
1 warning
make: *** [build/javac.done] Error 1
我认为我的 CLASSPATH
不是最新的。我需要添加 com.sun.star
包和 类.
由于我(目前)在 OSX,我的 LibreOffice 安装在 /Applications/LibreOffice.app
,我在 ./Contents/Resources/java
.
所以我这样更新 CLASSPATH
:
export CLASSPATH=/Applications/LibreOffice.app/Contents/Resources/java:$CLASSPATH
但是,我也有同样的错误。我该如何解决?
编辑 1 将一些罐子放入 CLASSPATH
我试过了:
$ export CLASSPATH=/Applications/LibreOffice.app/Contents//Resources/java/ridl.jar:.
我的错误较少。
编辑 2 构建成功!
我最终将以下 jar 文件添加到 CLASSPATH
:
/Applications/LibreOffice.app/Contents//Resources/java/ridl.jar
/Applications/LibreOffice.app/Contents//Resources/java/jurt.jar
/Applications/LibreOffice.app/Contents//Resources/java/juh.jar
/Applications/LibreOffice.app/Contents//Resources/java/unoil.jar
我得到了扩展名!
最后,为了从源代码构建,我是这样进行的:
git clone https://github.com/dtardon/xslt2-transformer.git
cd xslt2-transformer/
export CLASSPATH=/Applications/LibreOffice.app/Contents/Resources/java/ridl.jar:\
/Applications/LibreOffice.app/Contents/Resources/java/jurt.jar:\
/Applications/LibreOffice.app/Contents/Resources/java/juh.jar:\
/Applications/LibreOffice.app/Contents/Resources/java/unoil.jar
make
结果是build/xslt2-transformer.oxt
.