繁体   English   中英

Tika Parser作为gradle jar中的运行时依赖项

[英]Tika Parser as runtime dependency in gradle jar

我有一个gradle项目,正在使用Tika的AutoDetectParser提取内容。 当项目内置到胖子罐中时,AutoDetectParser返回空字符串。 我看到这是因为解析器不在运行时类路径中。 如何将解析器添加到运行时类路径?

Gradle构建文件:

    dependencies {
    compile 'org.apache.tika:tika-parsers:1.20'
    testImplementation 'junit:junit:4.12'
}

jar {
  manifest {
      attributes (
          'Main-Class': 'com.superna.tikatest.TikaTestApp'
      )
  }
  from { 
      configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } 
  } {
    exclude 'META-INF/*.RSA', 'META-INF/*.SF', 'META-INF/*.DSA'
  }
}

程式码片段:

                Metadata metadata = new Metadata();
                AutoDetectParser parser = new AutoDetectParser();
                BodyContentHandler handler = new BodyContentHandler();          

                try(FileInputStream fis = new FileInputStream(localPath.toString());
                        BufferedInputStream bis = new BufferedInputStream(fis);
                        TikaInputStream stream = TikaInputStream.get(bis)) {
                    parser.parse(stream, handler, metadata);
                    System.out.println(handler.toString());
                }

使用阴影插件构建我的罐子解决了问题

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM