突然"无法解决所有依赖关系...'org.apache.james:apache-mime4j:0.6@jar'未找到

Bob*_*har 8 gradle

我是新手,但是我所参与的项目的构建已经持续了好几个月.今天我试着"磨"它,我得到了一个相当神秘的错误......

bobk-mbp:DM_Server bobk$ gradle
:clean
:readme
:compileJava

FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all dependencies for configuration ':compile'.
> Artifact 'org.apache.james:apache-mime4j:0.6@jar' not found.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 7.114 secs
Run Code Online (Sandbox Code Playgroud)

事情是我没有对任何org.apache.james显式依赖信息:在我的依赖性节Apache的mime4j,所以它必须是未来在别的东西.我如何确定哪些依赖项实际需要这个,然后,我如何克服或解决这个缺失的工件?

Bob*_*har 11

那很有趣.maven依赖的gradle等价物:树是

gradle dependencies
compile - Classpath for compiling the main sources.
+--- com.google.guava:guava:11.0.2 [default]
|    \--- com.google.code.findbugs:jsr305:1.3.9 [compile,master,runtime]
...
+--- org.jboss.resteasy:resteasy-multipart-provider:2.3.0.GA [default]
|    +--- javax.mail:mail:1.4.4 [compile,master,runtime]
|    |    \--- javax.activation:activation:1.1 [compile,master,runtime]
|    +--- org.apache.james:apache-mime4j:0.6 [compile,master,runtime]
Run Code Online (Sandbox Code Playgroud)

这揭示了我的詹姆斯依赖是通过重新进入而来的.仅凭这些知识无济于事.我的本地缓存似乎变坏了.Nuking本地m2缓存(〜/ .m2)解决了这个问题(我开始rm -rf一次一个包,但很快就老了).

rm -rf ~/.m2
Run Code Online (Sandbox Code Playgroud)

显然,我需要了解这个基础设施.我相信有更好的方法可以做到这一点.