在命令提示符

时间:2017-12-26 04:11:32

标签: java windows-10 command-prompt java-deployment-toolkit

- 背景资料:

我最近开始学习Java编程语言的基础知识。为了在命令提示符下运行我的程序,我下载了java开发工具包,也称为JDK,并将我的windows 10系统路径设置为:

  

C:\ Program Files \ Java \ jdk-9.0.1 \ bin; C:\ Program   文件\爪哇\ JRE-9.0.1 \ bin中

- 问题:

使用以下格式编写简单的Hello World程序后:

    class test{

        public static void main(String[] args){

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

并使用

在命令提示符下运行它
  

javac test.java

,然后写

  

java test

输出说:

  

错误:主类方法在类测试中不是静态的,请定义main   方法如下:
  public static void main(String [] args)

我尝试在在线Java编译器上编译我的简单程序,一切正常。

- 编辑:

正如使用Java反编译器所建议的那样。我用了 http://www.javadecompilers.com/result  输出是:

    import java.io.PrintStream;

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

- 问题:

问题来自哪里?我该如何解决?

1 个答案:

答案 0 :(得分:0)

解决方案:

在编写和保存test.java程序时,我使用的是“Sublime Text 3”。 @Silvio Mayolo建议使用java反编译器找出问题,我注意到在Sublime中保存我的程序时,由于某种原因,静态会在test.java文件中被删除。然后我做了以下步骤:

  1. 我关闭了崇高的文字3
  2. 我用记事本打开了我的test.java文件。我意识到静态在public之后就丢失了,所以它是public void main(String args){}。
  3. 我在记事本中添加了static,因此它变成了public static void main(String [] args){}
  4. 我在记事本中再次保存了文件。
  5. 我在命令提示符下运行了javac test.java,然后是java test,我得到了我的 Hello World输出。