gpt4 book ai didi

gradle - 等级不通过人工方式解决Tika的传递依赖关系

转载 作者:行者123 更新时间:2023-12-03 03:48:49 27 4
gpt4 key购买 nike

我正在努力发布JesterJ的第一个真正有用的版本,并且在依赖解析方面遇到了重大障碍。 Jfrog的好心人足以识别我免费提供Artifactory Pro的开源努力,因此我正在使用它来检查和验证我的传递依赖项的许可证。我使用的是Apache 2.0许可证,因此我尝试使用Apache's own standard使其符合2.0许可证。但是,其中之一依赖关系,Apache Tika 1.12,具有一些“X类”依赖关系,在我认为对该策略进行某些更改的同时发布了1.12,并且Tika的较新版本已更正了这些依赖关系问题。

合理的解决方案是升级我的Tika依赖项。不幸的是,进展并不顺利。当我将Tika升级到1.15(或现在的1.16)时,我发现我不再从tika解析器获得传递依赖,包括没有获得tika-core导致编译问题。这是1.12的gradleDependenccies输出:

+--- org.apache.tika:tika-parsers:1.12
| +--- org.apache.tika:tika-core:1.12
| +--- org.gagravarr:vorbis-java-tika:0.6
| | \--- org.apache.tika:tika-core:1.5 -> 1.12
| +--- com.healthmarketscience.jackcess:jackcess:2.1.2
| | +--- commons-lang:commons-lang:2.6
| | \--- commons-logging:commons-logging:1.1.3 -> 1.2
(etc)

并在我的gradle构建中将2更改为6,我得到了:
+--- org.apache.tika:tika-parsers:1.16
+--- org.apache.solr:solr-solrj:5.5.0
| +--- commons-io:commons-io:2.4
| +--- org.apache.httpcomponents:httpclient:4.4.1
| | +--- org.apache.httpcomponents:httpcore:4.4.1
(etc)

这个问题出现在Artifactory / Gradle的交集处,并且可能与以下事实有关:Tika已开始在最近的版本中将其pom文件包含在META-INF中。

我尝试过的事情-
  • 移至gradle 4.0(不变)
  • 在JCenter之前将MavenCentral添加到我的libs-release虚拟存储库中(不变)

  • 我注意到Artifactory中的maven-central-cache存储库不为1.16缓存pom,但为1.12缓存pom。如果有人能告诉我如何获取人工制品来缓存/服务pom或让gradle正确地请求它(不确定是哪个问题),那将是有帮助的。

    完整的构建文件配置在此处可见:
    https://github.com/nsoft/jesterj/blob/273c99a0bceccda7f0933299c699232fec1079ad/code/ingest/build.gradle

    在此处匿名访问jetsterj Artifact :
    https://jesterj.jfrog.io/jesterj/webapp/#/home

    最佳答案

    最后,我不得不向JFrog提交错误。他们为我解决了。

    原来问题出在我启用的设置上。有一个设置可以用404(而不是401)隐藏未经授权的资源(防止人们四处钓鱼,以查看未透露的内容)。听起来这听起来更安全,所以我启用了它。我相信一切都很好,直到我还启用了匿名访问...这种组合打破了gradle的依赖关系解决方案。 JFrog支持人员说,maven(可能还有gradle)总是首先尝试匿名访问。在获取404之后,它可能会假设资源(pom.xml)不存在。没有pom,没有依赖项列表。

    Tika 1.12的唯一特别之处在于,在启用匿名访问之前,我已经将其加载。

    因此,解决方法是取消选中此设置:

    screenshot of setting

    关于gradle - 等级不通过人工方式解决Tika的传递依赖关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45329205/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com