Javac未正确注册类路径和方法,找不到符号
我正在尝试使用Apache Commons StringEscapeUtils。我的导入语句中有这行代码Javac未正确注册类路径和方法,找不到符号,java,classpath,javac,apache-commons,stringescapeutils,Java,Classpath,Javac,Apache Commons,Stringescapeutils,我正在尝试使用Apache Commons StringEscapeUtils。我的导入语句中有这行代码 import org.apache.commons.lang3.StringEscapeUtils; 我下载了apache commons lang,将其解压缩并移动: commons-lang3-3.4.jar (注意:只有.jar文件,而不是它附带的任何其他文件。不确定它是否重要)放入我的lib目录中,在那里我存储了所有其他.jar文件 我在编译它时使用了: javac -cp .:l
import org.apache.commons.lang3.StringEscapeUtils;
我下载了apache commons lang,将其解压缩并移动:
commons-lang3-3.4.jar
(注意:只有.jar
文件,而不是它附带的任何其他文件。不确定它是否重要)放入我的lib
目录中,在那里我存储了所有其他.jar
文件
我在编译它时使用了:
javac -cp .:lib/* Main.java
但是,javac给了我这个错误:
./FactualResultDeserializer.java:43: error: cannot find symbol
factualObject.setTitle(unescapeHtml(unescapeJava(resultActivity.get(TITLE).getAsString())));
^
symbol: method unescapeJava(String)
location: class FactualResultDeserializer
./FactualResultDeserializer.java:51: error: cannot find symbol
categories[j] = unescapeHtml(unescapeJava(catArray.get(0).getAsJsonArray().get(j).getAsString()));
^
symbol: method unescapeJava(String)
location: class FactualResultDeserializer
2 errors
它没有给我一个来自同一个StringEscapeUtils包的unescapeHtml错误
我已尝试清除.class文件以重新编译。这并没有解决问题,我们将不胜感激
提前谢谢 使用类的名称作为方法调用的前缀,以避免任何歧义。org.apache.commons.lang3.StringEscapeUtils中没有unescapeHtml,请使用unescapeHtml3或unescapeHtml4
factualObject.setTitle(
StringEscapeUtils.unescapeHtml4(
StringEscapeUtils.unescapeJava( resultActivity.get(TITLE).getAsString())));
不要将javadoc jar放在
库中。将文档与工作JAR分开。将其删除后,问题仍然存在。类中没有unescapeHtml。导入将不允许您调用静态方法unescapeJava,而不在它前面加上类名。@realponsuggest谢谢-修复了。我想这就是她的意思,无论如何,谢谢大家!它奏效了,我学到了一些东西。