Running a java program on command prompt

java windows-10 command-prompt java-deployment-toolkit

3906 观看

1回复

185 作者的声誉

- Background information:

I have recently started learning the basics of Java programming language. To run my program at the command prompt, I downloaded the java development kit also known as JDK, and I set my windows 10 system path to:

C:\Program Files\Java\jdk-9.0.1\bin;C:\Program Files\Java\jre-9.0.1\bin

- Problem:

After writing a simple Hello World program with the following format:

    class test{

        public static void main(String[] args){

            System.out.println("Hello World!");
        }
    }

and running it on command prompt using

javac test.java

, and then writing

java test

the output says:

Error: Main method is not static in class test, please define the main method as:
public static void main(String[] args)

I have tried compiling my simple program on an online Java compiler and everything works fine.

- Edit:

As suggested using a Java decompiler. I used http://www.javadecompilers.com/result and the output was:

    import java.io.PrintStream;

      public class test { 
          public test() {} public void main(String[] paramArrayOfString) { 
               System.out.println("Hello World!"); 
          }
      }

- Question:

Where is the problem coming from? How can I fix it?

作者: Kourosh 的来源 发布者: 2017 年 12 月 26 日

回应 (1)


0

185 作者的声誉

决定

Solution:

I was using "Sublime Text 3" when writing and saving my test.java program. @Silvio Mayolo suggested using a java decompiler to find out the problem, and I noticed that when saving my program in Sublime, the static gets deleted in test.java file for some reason. Then I did the following steps:

  1. I closed sublime text 3
  2. I opened my test.java file using notepad. I realized that static was missing after public, so it was public void main(String args){}.
  3. I added static in notepad, so it became public static void main(String[] args){}
  4. I saved the file again in notepad.
  5. I ran javac test.java in command prompt, and then java test, and I got my Hello World output.
作者: Kourosh 发布者: 26.12.2017 04:50
32x32