david@anon:~> "$OFFICE_HOME"/sdk/bin/uno-skeletonmaker calc-add-in --java5 -l "$OFFICE_PROGRAM_PATH"/types.rdb -n org.openoffice.adl.util.CalcDL1 -t CalcDL1
ERROR: Unknown entity 'CalcDL1'
david@anon:~>
I'd already found the '-l' trap for the unwary the hard way (and it also occurs in 'javamaker')! My problem now is that a value for '-t' is apparently mandatory for the 'calc-add-in' command but I don't understand what to put there.
The uno-skeletonmaker source code, its help text, and every other reference have identical wording: "-t <name> specifies a UNOIDL type name, e.g. com.sun.star.text.XText (can be used more than once)”.
Since '-l' already points to types.rdb you'd think '-t' wouldn't be needed. The phrasing "-t CalcDL1" was just a guess as I'd read some source code which seemed to imply a service-name was required.
Regards, David
On 24/1/23 01:15, Stephan Bergmann
wrote:
On 23/01/2023 03:45, David wrote:According to https://api.libreoffice.org/docs/tools.html#uno-skeletonmaker the argument ‘-t’ “specifies a UNOIDL type name, e.g. com.sun.star.text.XText (can be used more than once)”. This wording is the same as both the uno-skeletonmaker command-line ‘help’ and the introductory comments in the source code for 'skeletonmaker.cxx'. However I don't understand which entity the UNOIDL type name is intended to qualify. For example, is it the type of the skeleton code to be generated (presumably not, since that’s defined by the ‘calc-add-in’ command), the type of each value returned by the Java methods implemented in this addIn, or something else? Anything I've tried results in an "unknown entity" diagnostic.uno-skeletonmaker apparently needs to be explicitly told where to find any referenced UNOIDL entities, via the -l option. So adding something like-l "$OFFICE_HOME"/program/types.rdb -l "$OFFICE_HOME"/program/types/offapi.rdbshould work (in an SDK shell, on Linux at least).