gpt4 book ai didi

java - 从终端利用 acm.program 包运行 java 脚本

转载 作者:行者123 更新时间:2023-11-30 05:40:30 25 4
gpt4 key购买 nike

我正在尝试运行以下脚本 - source of code here - 在我的终端上:

import acm.program.*;

public class Add2 extends Program {

public void run() {
println("This program adds two numbers.");
int n1 = readInt("Enter n1: ");
int n2 = readInt("Enter n2: ");
int total = n1 + n2;
println("The total is " + total + ".");
}
}

然后,我在终端上使用这两个步骤编译并运行代码:

javac -classpath acm.jar Add2.java
java Add2

编译表明没有错误,但是当我尝试运行脚本时,出现以下错误:错误:无法找到或加载主类Add2。我在使用 Java 方面还很陌生,所以任何有关如何完成这项工作的建议将不胜感激!

最佳答案

Java 虚拟机 (JVM) 只能执行 main 的代码方法。如果没有 main 方法,代码就无法执行,但仍然可以编译(正如您所注意到的),因此必须使用 main 方法,否则您将遇到 java.lang.ClassNotFoundException.

只需将其添加到您的代码中(不需要注释):

public static void main(String[] args) {
// This class is mandatory to be executed by the JVM.
// You don't need to do anything in here, since you're subclassing ConsoleProgram,
// which invokes the run() method.
}

顺便说一句,由于您要重写 Program#run() 您需要添加 @Override作为注释。另外,由于您仅使用控制台,因此对 ConsoleProgram 进行子类化就足够了。

关于java - 从终端利用 acm.program 包运行 java 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55745975/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com