java.lang.NoSuchMethodError:java.util.Properties.load(嗯?为什么?)

时间:2009-03-30 05:28:30

标签: java nosuchmethoderror

我已经构建了一个可以从我的IDE(Netbeans)正确执行的Java应用程序。 我已经将jar打包成了适用于Mac OS(Leopard)的软件包。如果我从bundle或shell运行应用程序,我会收到此错误:

  

java.lang.NoSuchMethodError:java.util.Properties.load(Ljava / io / Reader;)V

我正在使用java 1.5.0_16。

你知道为什么我在使用shell执行jar时会出现这个错误。 你知道为什么我在使用IDE时没有得到它吗?

谢谢!

2 个答案:

答案 0 :(得分:8)

您使用的是Java 5,但Properties.load(Reader)仅在Java 6(又名1.6)中引入。如果再次发生这种情况,请检查JavaDocs(例如本例中的Properties JavaDoc)并查看您感兴趣的成员 - 它通常会给出它所引入的版本(例如“Since:1.6”)在这种情况下)。

您需要创建InputStream而不是Reader - 或升级到Java 6.我怀疑您会发现NetBeans正在使用Java 6,这就是它在那里工作的原因。< / p>

答案 1 :(得分:0)

只有阅读器支持UTF-8属性。我们需要自己重写这种方法。