与leiningen在maven本地存储库中的依赖关系

Shr*_*rat 7 clojure maven leiningen

我正在开始lein newclojure项目,并希望使用文章提取库.不幸的是,我无法在任何公开的maven存储库中找到该库的jar,因此我开始将其添加到本地maven存储库.

在项目目录中,我复制了鹅罐及其pom.xml文件并完成了

mkdir maven-repo
mvn install:install-file -Dfile=goose-2.1.6.jar -DartifactId=goose -Dversion=2.1.6 \
    -DgroupId=local -Dpackaging=jar -DlocalRepositoryPath=maven-repo -DpomFile=pom.xml
Run Code Online (Sandbox Code Playgroud)

并添加以下内容 project.clj

:repositories {"local" ~(str (.toURI (java.io.File. "maven-repo")))}
Run Code Online (Sandbox Code Playgroud)

[local/goose "2.1.6"]:dependencies.现在当我这样做时lein deps,我将goose-2.1.6.jar文件添加到lib目录中,但不是goose的依赖项.它们列在鹅的pom.xml文件中.

有没有办法解决这个问题,除了列出goose的依赖关系project.clj

Sha*_*mar 12

您可以使用lein-localrepo而不是冗长的mvn命令:https: //github.com/kumarshantanu/lein-localrepo

安装如下:

lein localrepo coords target/goose-2.1.6.jar | xargs lein localrepo install

但是,仅凭这一点无助于在回购中安装POM文件.你还应该运行这个:

cp pom.xml ~/.m2/repository/goose/goose/2.1.6/goose-2.1.6.pom

请注意,在此示例中,Goose将安装为groupId=goose,artifactId=goose.如果你愿意,你可以覆盖它,也许你应该.