try {
File file = new File("Example.pdf");
String content = new Tika().parseToString(file);
System.out.println("The Content: " + content);
} catch (Exception e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
我已经导入java.io.File并导入了org.apache.tika.Tika;但在运行此代码时,我收到如下错误:
线程“main”中的异常 java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;Ljava/lang/Throwable;)V at org .apache.commons.logging.impl.SLF4JLocationAwareLog.warn(SLF4JLocationAwareLog.java:162) 在 org.apache.pdfbox.pdmodel.font.FileSystemFontProvider.loadDiskCache(FileSystemFontProvider.java:461) 在 org.apache.pdfbox.pdmodel.font .FileSystemFontProvider.(FileSystemFontProvider.java:217) 在 org.apache.pdfbox.pdmodel.font.FontMapperImpl$DefaultFontProvider.(FontMapperImpl.java:130) 在 org.apache.pdfbox.pdmodel.font.FontMapperImpl.getProvider(FontMapperImpl.java :149)在org.apache.pdfbox.pdmodel.font.FontMapperImpl.findFont(FontMapperImpl.java:413)在org.apache.pdfbox.pdmodel.font.FontMapperImpl.findFontBoxFont(FontMapperImpl.java:376)在org.apache。 pdfbox.pdmodel.font.FontMapperImpl.getFontBoxFont(FontMapperImpl.java:350)在org.apache.pdfbox.pdmodel.font.PDType1Font。(PDType1Font.java:146)在org.apache.pdfbox.pdmodel.font.PDType1Font。( PDType1Font.java:79) 在 org.apache.pdfbox.pdmodel.font.PDFontFactory.createFont(PDFontFactory.java:62) 在 org.apache.pdfbox.pdmodel.PDResources.getFont(PDResources.java:143) 在 org.apache .pdfbox.contentstream.operator.text.SetFontAndSize.process(SetFontAndSize.java:60) 在 org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:838) 在 org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators (PDFStreamEngine.java:495)在org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:469)在org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:150)在org.apache。 pdfbox.text.LegacyPDFStreamEngine.processPage(LegacyPDFStreamEngine.java:139) 在 org.apache.pdfbox.text.PDFTextStripper.processPage(PDFTextStripper.java:391) 在 org.apache.tika.parser.pdf.PDF2XHTML.processPage(PDF2XHTML. java:147)在org.apache.pdfbox.text.PDFTextStripper.processPages(PDFTextStripper.java:319)在org.apache.pdfbox.text.PDFTextStripper.writeText(PDFTextStripper.java:266)在org.apache.tika.parser .pdf.PDF2XHTML.process(PDF2XHTML.java:117) 在 org.apache.tika.parser.pdf.PDFParser.parse(PDFParser.java:167) 在 org.apache.tika.parser.CompositeParser.parse(CompositeParser.java :280)在org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)在org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:135)在org.apache.tika.Tika。 parseToString(Tika.java:527) 在 org.apache.tika.Tika.parseToString(Tika.java:642) 在 java_programs.PdfParse.main(PdfParse.java:22)
我正在使用Solr来索引某些内容但是目前,这些内容被认为是与父/子相关的.
我有类似的东西:
<doc>
<id>*an Id*</id>
<path>*a path*</path>
<title>*a title*</title>
<type>**Page**</type>
</doc>
<doc>
<id>*an other Id*</id>
<path>*a other path*</path>
<title>*a other title*</title>
<type>**Component**</type>
</doc>
Run Code Online (Sandbox Code Playgroud)
但我想有一些接近的东西:
<doc>
<id>*an Id*</id>
<path>*a path*</path>
<title>*a title*</title>
<type>**Page**</type>
<child>
<id>*an Id*</id>
<path>*a path*</path>
<title>*a title*</title>
<type>**Component**</type>
</child>
</doc>
Run Code Online (Sandbox Code Playgroud)
我想知道它是否可能,我怎样才能设法定义我的schema.xml方式?
我正在使用Solr 3.6,我无法改变它.
我希望有人可以帮我一臂之力.
此致,Dekx.
我想在我的 Spring boot 项目中创建两个 Hibernate 感知对象映射器 bean。
一个 bean 强制延迟加载,另一个 bean 强制延迟加载设置为 false。我的bean定义如下:
我创建了一个HibernateAwareObjectMapper类
public class HibernateAwareObjectMapper extends ObjectMapper {
}
Run Code Online (Sandbox Code Playgroud)
和
@Configuration
public class CrewuiserCorebeans extends WebMvcConfigurerAdapter {
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
@Bean
public ObjectMapper defaultObjectMapper() {
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
Hibernate5Module hibernate5Module = new Hibernate5Module();
hibernate5Module.configure(Hibernate5Module.Feature.FORCE_LAZY_LOADING, true);
objectMapper.registerModule(hibernate5Module);
return objectMapper;
}
@Bean
public HibernateAwareObjectMapper hibernateAwareObjectMapper() {
HibernateAwareObjectMapper objectMapper = new HibernateAwareObjectMapper();
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
Hibernate5Module hibernate5Module = …Run Code Online (Sandbox Code Playgroud) 我正在使用Apache Poi XSSFWorkbooks来处理xlsx文件;我的程序在小型excel文件(60000行)上运行良好。当我开始在一个大文件(700 000行)上测试代码时,我遇到了内存问题。我在具有16 GB RAM的计算机上测试我的代码,但它不起作用。
这个问题有帮助吗?我读过有关SAX解析器的信息,但是我不想修改我的代码,而且我觉得使用起来并不直观。这不像xssf那样简单,它具有获取单元格,行等的简单方法。
有没有办法保持我的代码不变并解决内存问题?或除SAX解析器之外的任何解决方案?任何帮助表示赞赏,谢谢。
我正在尝试在 Windows上安装Apache Tika并mvn install按照说明运行
当我这样做时,我会失败,如下所示:
Tests run: 12, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec <<< FAILURE! - in org.apache.tika.parser.txt.TXTParserTest
testSubclassingMimeTypesRemain(org.apache.tika.parser.txt.TXTParserTest) Time elapsed: 0.001 sec <<< FAILURE!
org.junit.ComparisonFailure: expected:<...-vcalendar; charset=[ISO-8859-1]> but was:<...-vcalendar; charset=[windows-1252]>
at org.junit.Assert.assertEquals(Assert.java:115)
at org.junit.Assert.assertEquals(Assert.java:144)
at org.apache.tika.parser.txt.TXTParserTest.testSubclassingMimeTypesRemain(TXTParserTest.java:299)
Run Code Online (Sandbox Code Playgroud)
如何解决此问题以使 Apache Tika 在 Windows 上运行?
java ×3
apache-tika ×2
ant ×1
apache ×1
apache-poi ×1
large-files ×1
maven ×1
nutch ×1
solr ×1
solrj ×1
spring ×1
spring-boot ×1
ubuntu ×1
xlsx ×1