Welcome! Please see the About page for a little more info on how this works.

+2 votes
in tools.deps by
I just tried to include a library via git, and the library includes a git submodule, and when I ran clojure -Stree the checkout failed. From reading the stacktrace and exception messages it seems to have something to do with the submodule.

{code:title=Excerpt from my deps.edn}
{:deps {clj-chrome-devtools {:git/url "https://github.com/tatut/clj-chrome-devtools.git"
                             :sha "7b40f7b8c8cd6cf4b2049520630caa7db1b80d20"}}


{code:title=terminal session}
$ clojure -Stree
Checking out: https://github.com/tatut/clj-chrome-devtools.git at 7b40f7b8c8cd6cf4b2049520630caa7db1b80d20
Error building classpath. Checkout conflict with file: resources/devtools-protocol
org.eclipse.jgit.api.errors.JGitInternalException: Checkout conflict with file: resources/devtools-protocol
    at org.eclipse.jgit.api.CheckoutCommand.checkoutPath(CheckoutCommand.java:531)
    at org.eclipse.jgit.api.CheckoutCommand.access$200(CheckoutCommand.java:133)
    at org.eclipse.jgit.api.CheckoutCommand$2.apply(CheckoutCommand.java:516)
    at org.eclipse.jgit.dircache.DirCacheEditor.applyEdits(DirCacheEditor.java:166)
    at org.eclipse.jgit.dircache.DirCacheEditor.finish(DirCacheEditor.java:134)
    at org.eclipse.jgit.dircache.BaseDirCacheEditor.commit(BaseDirCacheEditor.java:276)
    at org.eclipse.jgit.dircache.DirCacheEditor.commit(DirCacheEditor.java:127)
    at org.eclipse.jgit.api.CheckoutCommand.checkoutPathsFromCommit(CheckoutCommand.java:522)
    at org.eclipse.jgit.api.CheckoutCommand.checkoutPaths(CheckoutCommand.java:433)
    at org.eclipse.jgit.api.CheckoutCommand.call(CheckoutCommand.java:205)
    at org.eclipse.jgit.api.CheckoutCommand.call(CheckoutCommand.java:133)
    at clojure.tools.gitlibs.impl$call_with_auth.invokeStatic(impl.clj:50)
    at clojure.tools.gitlibs.impl$call_with_auth.invoke(impl.clj:41)
    at clojure.tools.gitlibs.impl$call_with_auth.invokeStatic(impl.clj:43)
    at clojure.tools.gitlibs.impl$call_with_auth.invoke(impl.clj:41)
    at clojure.tools.gitlibs.impl$git_checkout.invokeStatic(impl.clj:117)
    at clojure.tools.gitlibs.impl$git_checkout.invoke(impl.clj:113)
    at clojure.tools.gitlibs$procure.invokeStatic(gitlibs.clj:52)
    at clojure.tools.gitlibs$procure.invoke(gitlibs.clj:41)
    at clojure.tools.deps.alpha.extensions.git$eval925$fn__927.invoke(git.clj:41)
    at clojure.lang.MultiFn.invoke(MultiFn.java:239)
    at clojure.tools.deps.alpha$expand_deps.invokeStatic(alpha.clj:189)
    at clojure.tools.deps.alpha$expand_deps.invoke(alpha.clj:172)
    at clojure.tools.deps.alpha$resolve_deps.invokeStatic(alpha.clj:239)
    at clojure.tools.deps.alpha$resolve_deps.invoke(alpha.clj:221)
    at clojure.tools.deps.alpha.script.make_classpath$create_classpath.invokeStatic(make_classpath.clj:59)
    at clojure.tools.deps.alpha.script.make_classpath$create_classpath.invoke(make_classpath.clj:52)
    at clojure.tools.deps.alpha.script.make_classpath$run.invokeStatic(make_classpath.clj:70)
    at clojure.tools.deps.alpha.script.make_classpath$run.invoke(make_classpath.clj:64)
    at clojure.tools.deps.alpha.script.make_classpath$_main.invokeStatic(make_classpath.clj:109)
    at clojure.tools.deps.alpha.script.make_classpath$_main.doInvoke(make_classpath.clj:84)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.lang.Var.applyTo(Var.java:705)
    at clojure.core$apply.invokeStatic(core.clj:665)
    at clojure.main$main_opt.invokeStatic(main.clj:491)
    at clojure.main$main_opt.invoke(main.clj:487)
    at clojure.main$main.invokeStatic(main.clj:598)
    at clojure.main$main.doInvoke(main.clj:561)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.lang.Var.applyTo(Var.java:705)
    at clojure.main.main(main.java:37)
Caused by: org.eclipse.jgit.errors.MissingObjectException: Missing unknown 40a14030a715ee4cc0a52b0efe0ad03c634f2e32
    at org.eclipse.jgit.internal.storage.file.WindowCursor.open(WindowCursor.java:169)
    at org.eclipse.jgit.lib.ObjectReader.open(ObjectReader.java:236)
    at org.eclipse.jgit.dircache.DirCacheCheckout.checkoutEntry(DirCacheCheckout.java:1367)
    at org.eclipse.jgit.api.CheckoutCommand.checkoutPath(CheckoutCommand.java:528)
    ... 40 more

1 Answer

0 votes
by
Reference: https://clojure.atlassian.net/browse/TDEPS-126 (reported by alex+import)
...