An example is probably illustrative. The following Java syntax (from here):
BoxUser user = new BoxUser(api, "0");
BoxUser.Info info = user.new Info();
info.setName(name);
user.updateInfo(info);
Can be converted to the following Clojure:
(let [user (BoxUser. api "0")
info (BoxUser$Info. user)]
(.updateInfo user (doto info (.setName name))))
The Clojure compiler is happy to compile and run this, but Cursive complains that it can't find the constructor for (BoxUser$Info user).

If I instead write (BoxUser$Info.) then 'Go to definition leads me to the constructor of the inner class:
public Info() {
super(BoxUser.this);
}
... but this isn't actually the corresponding constructor — the approach from above is the way to call this.
An example is probably illustrative. The following Java syntax (from here):
Can be converted to the following Clojure:
The Clojure compiler is happy to compile and run this, but Cursive complains that it can't find the constructor for
(BoxUser$Info user).If I instead write
(BoxUser$Info.)then 'Go to definition leads me to the constructor of the inner class:... but this isn't actually the corresponding constructor — the approach from above is the way to call this.