【问题标题】:Apache Tika dependencies without Maven (which dependencies to download)没有 Maven 的 Apache Tika 依赖项(要下载哪些依赖项)
【发布时间】:2017-11-09 19:23:39
【问题描述】:

我的项目需要使用 apache-tika,但不能使用 tika-app jar,因为内部依赖项与当前 jars 版本冲突。

所以我需要下载并导入 Eclipse 中的每一个依赖项。 我的问题是——我需要哪些依赖项?我总是需要“提供的依赖项”还是只需要“编译依赖项”和“运行时依赖项”就足够了?

PS:已经从 maven tika-parser 存储库下载了 100 多个 jars https://mvnrepository.com/artifact/org.apache.tika/tika-parsers/1.14

【问题讨论】:

  • 请阅读Under what circumstances may I add “urgent” or other similar phrases to my question, in order to obtain faster answers? - 总结是这不是解决志愿者的理想方式,并且可能会适得其反。请不要将此添加到您的问题中。
  • 这是第一次,我不知道。您能否删除您的反对票以鼓励初学者?虽然真的很紧急,但还是不会再把它标记为紧急
  • 我应该明确表示这不是 Stack Overflow 规则。除非我不知道您所在地区的文化差异,否则人们不会接近志愿者并告诉他们他们需要紧急做某事。我希望大多数志愿者会觉得有理由说一些相当粗鲁的回答。为什么在互联网上不一样?
  • 我不知道先生,但我只是礼貌地寻求帮助,因为我找不到上述问题的任何答案 - 我没有要求志愿者紧急回复,相当暗示花了几个小时寻找答案并下载了 100 多个罐子......工作很紧迫......尽管如此,我尊重你的观点,先生并注意不要在未来重复这一点
  • 获取 Tika OSGi 包,并从中获取依赖项?

标签: eclipse ant dependencies apache-tika


【解决方案1】:

重复使用这个答案:

Using Maven to download dependencies to a directory on the command line

以下命令将下载并运行Apache Ivy 的独立客户端。

curl -L -O http://search.maven.org/remotecontent?filepath=org/apache/ivy/ivy/2.4.0/ivy-2.4.0.jar

java -jar ivy-2.4.0.jar \
     -dependency org.apache.tika tika-parsers 1.14 \
     -retrieve "lib/[artifact]-[revision](-[classifier]).[ext]" \
     -confs default

生成以下文件:

├── ivy-2.4.0.jar
└── lib
    ├── apache-mime4j-core-0.7.2.jar
    ├── apache-mime4j-dom-0.7.2.jar
    ├── asm-5.0.4.jar
    ├── bcmail-jdk15on-1.54.jar
    ├── bcpkix-jdk15on-1.54.jar
    ├── bcprov-jdk15on-1.54.jar
    ├── boilerpipe-1.1.0.jar
    ├── bzip2-0.9.1.jar
    ├── c3p0-0.9.1.1.jar
    ├── cdm-4.5.5.jar
    ├── commons-codec-1.10.jar
    ├── commons-collections4-4.1.jar
    ├── commons-compress-1.12.jar
    ├── commons-csv-1.0.jar
    ├── commons-exec-1.3.jar
    ├── commons-io-2.5.jar
    ├── commons-lang-2.6.jar
    ├── commons-logging-1.2.jar
    ├── commons-logging-api-1.1.jar
    ├── commons-vfs2-2.0.jar
    ├── curvesapi-1.04.jar
    ├── cxf-core-3.0.3.jar
    ├── cxf-rt-frontend-jaxrs-3.0.3.jar
    ├── cxf-rt-rs-client-3.0.3.jar
    ├── cxf-rt-transports-http-3.0.3.jar
    ├── ehcache-core-2.6.2.jar
    ├── fontbox-2.0.3.jar
    ├── geoapi-3.0.0.jar
    ├── grib-4.5.5.jar
    ├── gson-2.2.4.jar
    ├── guava-17.0.jar
    ├── httpclient-4.2.6.jar
    ├── httpcore-4.2.5.jar
    ├── httpmime-4.2.6.jar
    ├── httpservices-4.5.5.jar
    ├── isoparser-1.1.18.jar
    ├── jackcess-2.1.4.jar
    ├── jackcess-encrypt-2.1.1.jar
    ├── jackson-core-2.8.1.jar
    ├── java-libpst-0.8.1.jar
    ├── javax.annotation-api-1.2.jar
    ├── javax.ws.rs-api-2.0.1.jar
    ├── jcip-annotations-1.0.jar
    ├── jcommander-1.35.jar
    ├── jdom2-2.0.4.jar
    ├── jempbox-1.8.12.jar
    ├── jhighlight-1.0.2.jar
    ├── jj2000-5.2.jar
    ├── jmatio-1.2.jar
    ├── jna-4.1.0.jar
    ├── joda-time-2.2.jar
    ├── json-20140107.jar
    ├── json-simple-1.1.1.jar
    ├── jsoup-1.7.2.jar
    ├── jsr-275-0.9.3.jar
    ├── juniversalchardet-1.0.3.jar
    ├── junrar-0.7.jar
    ├── jwnl-1.3.3.jar
    ├── maven-scm-api-1.4.jar
    ├── maven-scm-provider-svn-commons-1.4.jar
    ├── maven-scm-provider-svnexe-1.4.jar
    ├── metadata-extractor-2.9.1.jar
    ├── netcdf4-4.5.5.jar
    ├── opennlp-maxent-3.0.3.jar
    ├── opennlp-tools-1.5.3.jar
    ├── pdfbox-2.0.3.jar
    ├── pdfbox-debugger-2.0.3.jar
    ├── pdfbox-tools-2.0.3.jar
    ├── plexus-utils-1.5.6.jar
    ├── poi-3.15.jar
    ├── poi-ooxml-3.15.jar
    ├── poi-ooxml-schemas-3.15.jar
    ├── poi-scratchpad-3.15.jar
    ├── protobuf-java-2.5.0.jar
    ├── quartz-2.2.0.jar
    ├── regexp-1.3.jar
    ├── rome-1.5.1.jar
    ├── rome-utils-1.5.1.jar
    ├── sis-metadata-0.6.jar
    ├── sis-netcdf-0.6.jar
    ├── sis-referencing-0.6.jar
    ├── sis-storage-0.6.jar
    ├── sis-utility-0.6.jar
    ├── slf4j-api-1.7.12.jar
    ├── stax2-api-3.1.4.jar
    ├── tagsoup-1.2.1.jar
    ├── tika-core-1.14.jar
    ├── tika-parsers-1.14.jar
    ├── udunits-4.5.5.jar
    ├── vorbis-java-core-0.8.jar
    ├── vorbis-java-tika-0.8.jar
    ├── woodstox-core-asl-4.4.1.jar
    ├── xmlbeans-2.6.0.jar
    ├── xmlschema-core-2.1.0.jar
    ├── xmpcore-5.1.2.jar
    └── xz-1.5.jar

更新

如果您想要编译和提供的依赖项,您只需将它们指定为 ivy 配置。例如

java -jar ivy-2.4.0.jar \
     -dependency org.apache.tika tika-parsers 1.14 \     
     -retrieve "lib/[artifact]-[revision](-[classifier]).[ext]" \
     -confs compile,provided

如果您想了解 Maven 范围和 ivy 配置之间的关系,我可以推荐以下内容:

【讨论】:

  • 感谢您,但请澄清“编译依赖项”和“提供的依赖项”都需要主 Tika 1.14 [链接]mvnrepository.com/artifact/org.apache.tika/tika-parsers/1.14 的每个子编译依赖项?让我再说一遍,我没有使用 maven,而是使用单独的 jar 与其他更大项目所需的 jar 分别编译
  • @mystic.coder 我已经更新了我的答案,以演示如何检索编译和提供的依赖项,但我怀疑这仍然不能解决您要解决的问题。考虑到依赖项可能有依赖项,有时版本不匹配,检索 Maven 依赖项是一个非常重要的问题。
猜你喜欢
  • 2020-04-30
  • 2015-10-21
  • 2012-04-08
  • 1970-01-01
  • 2013-05-22
  • 2020-07-06
  • 1970-01-01
  • 2020-04-21
  • 2011-01-15
相关资源
最近更新 更多