【maven】Unable to find javadoc command: The environment variable JAVA_HOME is not correctly set.

目录

  • 起因
  • 问题查找
  • 解决问题
  • 总结

起因

今天需要使用Anserini构建robust04数据,使用到了maven工具,
根据
https://github.com/canjiali/PARADE
README.md中的建议

If you bother getting the raw text from Anserini, you can also replace the anserini/src/main/java/io/anserini/index/IndexUtils.java file by the extra/IndexUtils.java file in this repo, then re-build Anserini (version 0.7.0). Below is how we fetch the raw text

替换完成后,re-build Anserini
但是这个时候出现问题,mvn.javadoc的插件一直报错

MavenReportException: JAVA_HOME not correctly set
Unable to find javadoc command: The environment variable JAVA_HOME is not correctly set.

问题查找

看到报错,直接google
发现需要找到java路径,重新设定一下就行
https://stackoverflow.com/questions/13961615/unable-to-find-javadoc-command-maven
但是似乎没啥用,
其他方法基本都是在mac上的解决方法,找了一圈都没有找到办法,都想直接找java同学帮忙了。
又看了一遍报错信息,说加上-X可以看到详细信息报错信息
于是重新运行查看报错信息,

[DEBUG]   (f) outputDirectory = /content/drive/MyDrive/anserini-anserini-0.7.0/target/apidocs
[DEBUG]   (f) overview = /content/drive/MyDrive/anserini-anserini-0.7.0/src/main/javadoc/overview.html
[DEBUG]   (f) project = MavenProject: io.anserini:anserini:0.7.0 @ /content/drive/MyDrive/anserini-anserini-0.7.0/pom.xml
[DEBUG]   (f) quiet = false
[DEBUG]   (f) reactorProjects = [MavenProject: io.anserini:anserini:0.7.0 @ /content/drive/MyDrive/anserini-anserini-0.7.0/pom.xml]
[DEBUG]   (f) resourcesArtifacts = []
[DEBUG]   (f) serialwarn = false
[DEBUG]   (f) session = org.apache.maven.execution.MavenSession@328d044f
[DEBUG]   (f) settings = org.apache.maven.execution.SettingsAdapter@3d1be485
[DEBUG]   (f) show = protected
[DEBUG]   (f) skip = false
[DEBUG]   (f) sourceDependencyCacheDir = /content/drive/MyDrive/anserini-anserini-0.7.0/target/distro-javadoc-sources

解决问题

在debug的输出日志中,发现这一行

[DEBUG]   (f) project = MavenProject: io.anserini:anserini:0.7.0 @ /content/drive/MyDrive/anserini-anserini-0.7.0/pom.xml

不知道还记得,这个链接中第二个解决方法就是修改的xml文件。
https://stackoverflow.com/questions/13961615/unable-to-find-javadoc-command-maven
我当时一直没找到xml文件在哪里,直接输出才发现原来就在项目目录下面,同时看到下面评论的一句话
在这里插入图片描述
我想我也是ubutu,赶紧试试!!
修改pom.xml
【maven】Unable to find javadoc command: The environment variable JAVA_HOME is not correctly set._第1张图片
重新运行!mvn clean package appassembler:assemble成功了!!!

总结

当使用自己不熟悉的工具,出现报错,大概率都是入门级的报错。
一定不要紧张,debug打开,一步步看具体在哪里报错,看看是由什么问题引起的。
你说你看不懂debug的日志,那你一定是太着急了,总想着赶紧解决报错,而不想弄清楚报错的问题是什么,这时候需要一定的耐心。

你可能感兴趣的:(Linux,java,maven,NLP,anserini,robust04)