Ejecutar archivo con SQLExec que contiene $$ caracteres

He creado un archivo de volcado de SQL usando pg_dump. Este archivo de exportación contiene funciones que contienen $ caracteres. No hay problema para importar el archivo con psql -f <nombre de archivo>.

Si quiero importar el archivo con ant mediante la tarea SQLExec, obtengo una excepción como:

org.postgresql.util.PSQLException: ERROR: syntax error at or near "$"

¿Hay una manera de importar un archivo que contiene $?

En el registro de Postgres, parece que las tareas SQLExec convierten $ a $, lo que causa el error.

ERROR: error de sintaxis en o cerca de "$4$quot; en el carácter 87 DECLARACIÓN: CREAR FUNCIÓN process_create_servicenumber () RETURNS trigger LANGUAGE plpgsql AS $ BEGIN IF (TG_OP = 'DELETE') LUEGO RETURN VIEJA

Aqui mi metodo

protected void importNewDbFromDumpFile() {

    final class SqlExecuter extends SQLExec {
        public SqlExecuter() {
            Project project = new Project();
            project.init();
            setProject(project);
            setTaskType("sql");
            setTaskName("sql");
        }
    }
    try {
        SqlExecuter executer = new SqlExecuter();
        executer.setSrc(new File(dbDumpFileLocation));
        executer.setClasspath(createClasspath());
        executer.setEscapeProcessing(true);
        executer.setDriver("org.postgresql.Driver");
        executer.setUrl("jdbc:postgresql://localhost/test");
        executer.setPassword("test");
        executer.setUserid("manager");
        executer.execute();
    } catch (Exception e) {
        log.info("Exception importing database ...", e);
    }
}

Respuestas a la pregunta(1)

Su respuesta a la pregunta