See
The singleQuotedString cannot have any extraneous spaces.
The method name specified in the CREATE FUNCTION or CREATE PROCEDURE statement normally takes the following form:
The optional parameterTypes specification is needed when the Java signature determined from the SQL declaration is ambiguous.
If the class is a static nested class, or if the method is in a static nested class, use a dollar sign ($) as a separator between the outer and static class. For example, suppose you have the following class and method definition:
If you use CREATE FUNCTION to bind this pow method to a user-defined function, the external name should be TestFuncs$MyMath.pow, not TestFuncs.MyMath.pow.