簡體   English   中英

從終端使用acm.program包運行Java腳本

[英]Run java script utilizing acm.program package from terminal

我試圖在我的終端上運行以下腳本( 此處為代碼源)

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

編譯沒有錯誤,但是當我嘗試運行腳本時,出現以下錯誤: Error: Could not find or load main class 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就足夠了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM