Leiningen: работа с локальным git-репо
Я хочу что-то изменить в заклинании, поэтому я создал форк на github и клон этого на своем ноутбуке. Теперь, когда я пытаюсь запустить тесты с lein test
Я получаю эти ошибки:
/Users/me/work/incanter$ lein test
Could not find artifact incanter:incanter-core:jar:1.5.8-SNAPSHOT in clojars (https://clojars.org/repo/)
Could not find artifact incanter:incanter-io:jar:1.5.8-SNAPSHOT in clojars (https://clojars.org/repo/)
Could not find artifact incanter:incanter-charts:jar:1.5.8-SNAPSHOT in clojars (https://clojars.org/repo/)
Could not find artifact incanter:incanter-mongodb:jar:1.5.8-SNAPSHOT in clojars (https://clojars.org/repo/)
Could not find artifact incanter:incanter-pdf:jar:1.5.8-SNAPSHOT in clojars (https://clojars.org/repo/)
Could not find artifact incanter:incanter-svg:jar:1.5.8-SNAPSHOT in clojars (https://clojars.org/repo/)
Could not find artifact incanter:incanter-latex:jar:1.5.8-SNAPSHOT in clojars (https://clojars.org/repo/)
Could not find artifact incanter:incanter-excel:jar:1.5.8-SNAPSHOT in clojars (https://clojars.org/repo/)
Could not find artifact incanter:incanter-sql:jar:1.5.8-SNAPSHOT in clojars (https://clojars.org/repo/)
Could not find artifact incanter:incanter-zoo:jar:1.5.8-SNAPSHOT in clojars (https://clojars.org/repo/)
This could be due to a typo in :dependencies or network issues.
If you are behind a proxy, try setting the 'http_proxy' environment variable.
/Users/me/work/incanter$
Я ничего не изменил в project.clj
но вот оно:
(defproject incanter "1.5.8-SNAPSHOT"
:description "Incanter is a Clojure-based, R-like statistical programming and data visualization environment."
:url "http://incanter.org/"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
:scm {:name "git" :url "https://github.com/incanter/incanter"}
:min-lein-version "2.0.0"
:dependencies [[incanter/incanter-core "1.5.8-SNAPSHOT"]
[incanter/incanter-io "1.5.8-SNAPSHOT"]
[incanter/incanter-charts "1.5.8-SNAPSHOT"]
[incanter/incanter-mongodb "1.5.8-SNAPSHOT"]
[incanter/incanter-pdf "1.5.8-SNAPSHOT"]
[incanter/incanter-svg "1.5.8-SNAPSHOT"]
[incanter/incanter-latex "1.5.8-SNAPSHOT"]
[incanter/incanter-excel "1.5.8-SNAPSHOT"]
[incanter/incanter-sql "1.5.8-SNAPSHOT"]
[incanter/incanter-zoo "1.5.8-SNAPSHOT"]
[org.clojure/clojure "1.5.1"]
]
:profiles {:dev {:resource-paths ["data"]}
:debug {:debug true}
:uberjar {:aot :all
:main incanter.main
:dependencies [[reply "0.3.0" :exclusions [org.clojure/clojure]]
[swingrepl "1.3.0"
:exclusions [org.clojure/clojure org.clojure/clojure-contrib]]
]
}
}
:repl-options {:init-ns incanter.irepl
:resource-paths ["data"]
:init (do
(set! *print-length* 500)
(use 'clojure.repl))
}
:jvm-opts ["-Xmx1g" "-Djsse.enableSNIExtension=false"
~(str "-Dincanter.home=" (System/getProperty "user.dir"))]
)
Любая помощь будет оценена.
2 ответа
Решение
Я посмотрел на проект. Вы должны создавать любые проекты в /modules, чтобы Snapshot-версия 1.5.8-SNAPSHOT была собрана на вашем локальном.m2/
cd modules
cd incanter-core
lein install
...
Тогда я думаю, что это должно работать. Альтернативно вы можете уменьшить зависимости до 1.5.7.
Вы можете использовать этот подход:
Создать банки этих проектов (lein uberjar
)
Затем используйте команду для каждой вашей банки:
mvn install:install-file \
-Dfile=maven_repository/my-project.jar \ ;;path to your jar(this is example)
-DgroupId= incanter \
-DartifactId= incanter \
-Dversion=0.1.0 \
-Dpackaging=jar \
-DgeneratePom=true
Затем добавьте deps к вашему project.clj
и обновить leiningen:
[incanter/incanter "0.1.0"]
[groupId/artifactId "your-version"]
...