0

我需要使用 JavaHelp 包为我的应用程序生成帮助系统。我已经从 github 存储库下载了该项目,并使用 GNU make 工具和 JDK 1.8 上的 Apache ant 对其进行了编译。我设法生成了我的帮助系统。

问题来自使用 jhindexer 工具生成术语数据库以执行搜索。根据文档,只需在脚本中执行或直接 jar jhindexer 并指明 .html 文件所在的目录。

When executing the tool I get the following error:

 ~/Downloads: jhindexer JavaHelp
    Exception in thread "main" java.lang.IllegalArgumentException: URI is not hierarchical
        at java.io.File.<init>(File.java:418)
        at com.sun.java.help.search.RAFFileFactory.get(RAFFileFactory.java:87)
        at com.sun.java.help.search.BlockManager.<init>(BlockManager.java:87)
        at com.sun.java.help.search.BtreeDict.init(BtreeDict.java:212)
        at com.sun.java.help.search.FullBtreeDict.<init>(FullBtreeDict.java:343)
        at com.sun.java.help.search.DefaultIndexBuilder.<init>(DefaultIndexBuilder.java:79)
        at com.sun.java.help.search.Indexer.compile(Indexer.java:197)
        at com.sun.java.help.search.Indexer.main(Indexer.java:86)

错误发生在这一行,我尝试进行更改,但无法将它们应用于最终编译。

if (isFileURL(url)) {
    try {
    File f = new File(url.toURI());

    // refactor so it runs with verification on...

    // Object o = new FilePermission(f, update ? "write":"read");
    // here -- check if AccessController.checkPermission(p);

    result =  new RAFFile(f, update);
    debug ("Opened Dict file with file protocol:" +  f);
    } catch (SecurityException e) {
    // cannot do "it" -- code is not yet in place
    } catch (URISyntaxException x) {
        throw (IOException) new IOException(x.toString()).initCause(x);
    }

我已经针对 JDK 1.6 进行了编译,同样的错误也发生了。有谁知道我如何操作这个工具?太感谢了。

4

0 回答 0