我知道关于此主题的问题很多,尽管我尝试了很多事情,但无法弄清楚问题出在哪里。

具体来说,我尝试使用以下命令执行webgraph的jar文件

java-cp webgraph-3.5.2.jar it.unimi.dsi.webgraph.ASCIIGraph


我查看了jar文件,并且类文件位于it / unimi / dsi / webgraph文件夹中,这似乎还可以。运行命令时我仍然得到

Error: Could not find or load main class it.unimi.dsi.webgraph.ASCIIGraph


我试图指定所有用分号分隔的库,但这样做没有帮助(我也希望因缺少库而出现另一条错误消息)

最佳答案

我遇到了同样的问题,经过大量研究后终于找到答案。这是传递该错误的方法。
第一步:从Here下载并提取Apache Maven二进制文件
第二步:从here下载依赖项tarball并将其解压缩
步骤三:检索带有this repository扩展名的WebGraph框架源代码。该版本包含复制列表和复制标志压缩格式,以及其他压缩方案的其他标志。
第四步:通过在WebGraph根目录中运行“ mvn install”,使用Maven编译框架的JAR文件。
第五步:将target / webgraph-3.5.2.jar文件复制到与依赖项(tarball依赖项)中的JAR文件相同的位置。
这就是诀窍,您需要确切指定tarball依赖项的位置,以便获得预期的结果。因此,假设我的tarball依赖项位于我的〜/ webgraph-deps /目录中,

$ java -cp "~/webgraph-deps/*" it.unimi.dsi.webgraph.ASCIIGraph <WHATEVER_YOU_WANT_TO_DO>


另外,如果上述命令失败,则可能是由于内存不足并使用以下命令[它会设置Java的初始堆大小以供使用,我有12GB的RAM并为此过程分配了6GB(-Xmx6G) ]

$ java -Xmx6G -cp "~/webgraph-deps/*" it.unimi.dsi.webgraph.ASCIIGraph


这是我的参考,https://github.com/lhelwerd/WebGraph。检查出来更多!

10-05 20:02