Leiningen: как установить идентификатор группы Maven и свойства упаковки в project.clj

#maven #clojure #leiningen

#maven #clojure #leiningen

Вопрос:

У меня есть проект Clojure, который я хотел бы упаковать и использовать в одном из моих Java-проектов, использующих Maven.

Когда я создаю pom.xml файл, использующий Leiningen, устанавливает groupId в artifactId, но мне нужно, чтобы groupId совпадал с моим родительским Java-проектом.

Кроме того, я хотел бы иметь возможность указать тип упаковки в pom.xml быть джар

Короче говоря: как мне установить groupId и свойства упаковки в project.clj для создания pom.xml содержащий эти свойства?

Ответ №1:

Leiningen использует соглашение об groupId/artifactId именовании, чтобы различать две сущности. Посмотрите на образец project.clj, чтобы увидеть, как это делается. При запуске lein pom groupId и artifactId затем будет правильно разрешен.

Пример фрагмента из связанного project.clj :

 ;; The project is named "sample", and its group-id is "org.example".
(defproject org.example/sample "1.0.0-SNAPSHOT" ; version "1.0.0-SNAPSHOT"
;; ...
  

РЕДАКТИРОВАТЬ: я пропустил вопрос об упаковке. AFAICS, в котором вы не можете указать свойство упаковки project.clj .