Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


On Sat, 2013-09-14 at 08:14 +0100, Andrzej Hunt wrote:
Hi Stefan/All,

I've been trying to track down why the jvm isn't usable in unit tests
(attempted fix in https://gerrit.libreoffice.org/#/c/5936/ )

stoc/source/javavm/javavm.cxx needs to find java which it does by
expanding URE_INTERNAL_JAVA_DIR. This seems to be set within "unorc",
which is found automatically by cppuhelper (cppuhelper/source/paths.cxx
-- getUnoIniuri()) -- this loads unorc from wherever cppuhelper library
is  found(called libuno_ccpuhlpergcc3.so -- not sure why this is the
naming scheme?).

Running LO from instdir: instdir/unxlngx6/ure/lib/unorc is used
(generated by scp2/source/ooo/ure.scp) -- this contains the expected
URE_INTERNAL_JAVA_DIR

(It seems I was mistaken on this: the instdir unorc looks like it's
copied directly from ure/source/unorc , the scp one is/was used for
installation/)



What I'm still not able to do is have hsqldb itself load (fails on
can't
find org.hsqldb.jdbcDriver or similar) --this is since the driver has
the hsqldb.jar path hardcoded in the sources as
"$BRAND_BASE_DIR/" LIBO_SHARE_JAVA_FOLDER "/hsqldb.jar"
(and the jdbc drivers specifically only load classes from the driver
specific classpath) -- I guess if unit tests were to be run in instdir
then that would allow things to work, I'm still thinking about how
best
to let them run in the current solver though (although I hear solver
is
to be gotten rid of eventually).

Would replacing LIBO_SHARE_JAVA_FOLDER with a macro/variable evaluated
at runtime (not sure of the terminology) similar to the
URE_INTERNAL_JAVA_DIR be acceptable? (I'll investigate the full details
tomorrow.) Currently LIB_SHARE_JAVA_FOLDER is hardcoded as the
instdir/installation specific path (e.g. program/classes) whereas in
solver jars are located in bin/)

Cheers,

        Andrzej


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.