java - "Error: Could not find or load main class Average"在Java代码中使用引用的程序集时

标签 java eclipse

以下代码在 Eclipse 中运行良好(它保存在源文件 Average.java 中)

我在 Eclipse 中添加了对 stdlib.jar 的引用,它在 Eclipse 中构建并运行良好

公开课平均水平{

public static void main (String[] args) 
{
    // TODO Auto-generated method stub
    double sum = 0.0;
    int cnt =0;
    while (!StdIn.isEmpty())
    {
        sum +=StdIn.readDouble();
        cnt++;
    }
    double avg =  sum / cnt;
    StdOut.printf("Average is %.5f\n", avg);
    System.out.println("Hi");
    }

}

我想尝试从命令行运行它。我能够使用以下方法编译它: "c:\program files\java\jdk1.7.0_55\bin\javac"-classpath "C:\Users\\Documents\IntroCS\stdlib.jar"Average.java

但是,在运行平均时使用:

java -classpath“C:\Users\\Documents\IntroCS\stdlib.jar”平均

我收到错误:“错误:无法找到或加载主类 Average”

我发现,如果我注释引用程序集中包含 StdIn 和 StdOut 的行,则可以从命令行正常运行。

我想了解这里发生了什么以及允许它与引用的程序集一起从命令行运行可能需要什么。

从命令行运行时,Eclipse 创建的类文件也会返回相同的错误。有关 Eclipse 如何工作与命令行执行如何运行的一些详细信息将受到高度赞赏。尽管我在 C++、vb.net、C# 和 Windows 领域的经验稍微丰富一些,但我还是 Java 新手。

最佳答案

-classpath "C:\Users\\Documents\IntroCS\stdlib.jar" 告诉 Java 在 stdlib.jar 中查找类。

stdlib.jar 没有名为“Average”的类,因此 Java 无法在那里找到它。

您还需要告诉它在 IntroCS 目录中查找(如果这是您的 Average.class 文件所在的位置),使用:

java -classpath "C:\Users\Documents\IntroCS\stdlib.jar;C:\Users\Documents\IntroCS" Average

关于java - "Error: Could not find or load main class Average"在Java代码中使用引用的程序集时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27683039/

相关文章:

Java正则表达式匹配模式

java - 在列表网格中使用可分页选项滚动到行 Smart gwt

Android/Eclipse - 保存按钮错误

java - 我的程序在 Eclipse 中运行良好,但作为 jar 文件运行时抛出异常

java - 以编程方式创建源文件夹

Java 或 Groovy : loop through hashmap and display html table in Velocity template

eclipse - 如何将nodejs项目导入mac中的nodejs eclipse

eclipse - Eclipse上安装的插件不可见

java - 在 Tomcat java.lang.NoClassDefFoundError 下访问 servlet 时?

java - 在一条语句中使用 getGenerateKeys() 从 java 向 Oracle 数据库中插入多行