1

我正在使用 Java 1.6.0_45。我有一个使用 BigInteger 的简单 Java 代码。当我从命令行运行时它运行良好(javac 然后 java )

现在,当我从 eclipse 运行相同的代码时,我得到一个编译错误!我在运行时都打印了 java 的版本,java 运行时版本是相同的。

这是代码:

import java.math.*;

public class BigInteger2 {
     public static void main(String[] args) {
          System.out.println(System.getProperty("java.version"));
          BigInteger b1 = new BigInteger("3");
     }
}

我得到的错误(仅在 Eclipse 中)如下:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
The constructor BigInteger(String) is undefined at BigInteger2.main(BigInteger2.java:10)

它基本上是在抱怨 new BigInteger("3")

我在这里想念什么?eclipse中的一些配置设置?为什么当我从命令行编译和调用时它运行良好,为什么它不在eclipse中运行?请建议。谢谢!!

4

3 回答 3

1

您在 Java->Installed JRE's 下的 Preferences 中设置的 JDK/JRE 是什么?您在问题中提到的JDK是否相同?您是否可能将 eclipse.ini 中的 -vm 参数设置为较旧的 JDK?您可以在那里提供 -vm 参数以确保使用正确的 JDK 来启动 eclipse 本身。[ http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fmisc%2Fruntime-options.html ]

于 2013-09-10T06:48:25.007 回答
1

尝试清理并构建项目,然后运行 ​​prog

于 2013-09-10T06:25:23.177 回答
0

转到您的project -> right click -> Properties -> java Build Path -> Libraries 并检查您的版本JRE System Library

BigInteger自 JDK 1.1 以来就存在,但不确定String constructor

于 2013-09-10T16:44:06.087 回答