首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Windows 64位上运行Grobid

在Windows 64位上运行Grobid
EN

Stack Overflow用户
提问于 2012-05-10 11:44:37
回答 2查看 1.2K关注 0票数 2

我试图在64位Windows上执行格罗比

没有Windows库的x64位版本(至少我找不到)。它运行在64位Linux和64位JRE上,在32位Windows上运行32位JRE。所以JRE的版本并不是问题所在。

我知道我需要包含64位的Windows - libcrfpp文件。但是我找不到它。你能告诉我在哪里能找到它或者帮我执行吗?

不过,我还是犯了以下错误-

在Windows 64上使用64位JVM运行它时出错-

代码语言:javascript
复制
Exception in thread "main" java.lang.ExceptionInInitializerError
        at org.grobid.core.main.GrobidParser.<clinit>(GrobidParser.java:22)
        at org.pushpin.main.Main.main(Main.java:138)
   Caused by: java.lang.RuntimeException: Unable to find a native CRF++ library: Folder <FOLDER>\GROBID_HOME\.\lib\win-64 does not exist
        at org.grobid.core.main.LibraryLoader.load(LibraryLoader.java:21)
        at org.grobid.core.impl.GrobidFactoryImpl.init(GrobidFactoryImpl.java:35)
        at org.grobid.core.impl.GrobidFactoryImpl.newInstance(GrobidFactoryImpl.java:22)
        at org.grobid.core.impl.GrobidFactoryImpl.instance(GrobidFactoryImpl.java:14)
        at org.grobid.core.GrobidFactory.<clinit>(GrobidFactory.java:13)
        ... 2 more

在Windows64上使用32位JVM运行更新错误-

代码语言:javascript
复制
Caused by: java.io.IOException: Cannot run program "<project path i have removed it>\lib/pdftoxml": CreateProcess error=193, %1 is not a valid Win32 application
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
at java.lang.Runtime.exec(Runtime.java:615)
at java.lang.Runtime.exec(Runtime.java:448)
at java.lang.Runtime.exec(Runtime.java:345)
at org.grobid.core.document.Document.pdf2xml(Document.java:217)
at org.grobid.core.engines.HeaderParser.processing(HeaderParser.java:86)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-28 11:31:43

从64位JVM加载32位本地库是不可能的.

但是,您可以在64位Windows上安装32位JVM,并运行使用32位本机库的Java应用程序。

更新:

这是应用程序启动程序的摘录。

代码语言:javascript
复制
private static String getLibraryFolder() {
    String osPart = System.getProperty("os.name").replace(" ", "").toLowerCase().substring(0, 3);
    String archPart = System.getProperty("sun.arch.data.model");
    //todo: change to fetching the basic dir from GrobidProperties object
    return String.format("%s/%s-%s", GrobidProperties.getInstance().getNativeLibraryPath().getAbsolutePath(),
            osPart, archPart);
}

应用程序正在检查属性sun.arch.data.model以获取本机库文件夹。如果在64位Windows中使用32位JVM,则

代码语言:javascript
复制
java.home=C:\Program Files (x86)\Java\jre7
os.arch=x86
os.name=Windows 7
sun.arch.data.model=32

因此,使用32位JRE执行应用程序将从<FOLDER>\GROBID_HOME\.\lib\win-32加载本机库。

更新:使用32位JRE时遇到的错误与JVM体系结构无关。您应该正确安装和配置您的pdf2xml

票数 2
EN

Stack Overflow用户

发布于 2016-09-23 10:09:22

我在这里写这篇文章只是想告诉大家,我们已经集成了用于Windows 64位的马皮提的移植版本。

如果您仍然有兴趣尝试,可以从主控下载/更新Grobid开发版本。

pdf2xml的问题已经得到解决,以及在用Windows进行测试时出现的其他小错误。批处理和服务模式都运行得很好。如果能在不同的Windows版本上进行更密集的测试,那就太好了。

您可以跟踪进度,并在相对问题上报告最终的问题或错误。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10533290

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档