I think JOOQ isn't a proper ORM, but it is splitting hairs on the definition. It calls itself an OOQ (object oriented querying)
ORMs become an antipattern when they try to abstract away the database completely by masking write operations and paging lists implicitly. Developers need to know precisely when these operations happen to manage performance.
JOOQ doesn't do that. Active record does. Hibernate does (but it's configurable)