ob-clojure.el should use separate cider functions for value and output results, in order to avoid expressing standard output as some kind of programming-language string with embedded \n notation. I experimentally adjusted my copy of ob-clojure (obtained from git clone -b master today) like this:
(1) In the cider block, access the result-params. (2) Put either 'cider-get-value or 'cider-get-raw-value into a variable, depending on the result-params. (3) funcall the variable instead of using cider-get-raw-value directly.
(0) Up at the top, add a declare-function for cider-get-value, next to the declare-function for cider-get-raw-value.
(defun org-babel-execute:clojure (body params)
"Execute a block of Clojure code with Babel." (let ((expanded (org-babel-expand-body:clojure body params)) result) (case org-babel-clojure-backend (cider (require 'cider)