2014-10-03 79 views
1

我有问题在我的命令行中使用Java在Java中运行基本的helloworld应用程序,我可以在Java中运行它。Java HelloWorld命令行

这里是我的代码(在NetBeans):

package helloworld; 

public class HelloWorld { 

    public static void main(String[] args) { 

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

    }   
} 

我已经设置C:\ Program Files文件\的Java \ jdk1.8.0_20 \ BIN;我的PATH变量在Windows环境中为

在运行时:

javac HelloWorld.java 

的HelloWorld.class的成功建立。

然而在接下来的步骤中,当我运行:

java HelloWorld 

我收到他以下错误:

错误:在我的节目源无法找到或加载主类的HelloWorld

根目录我可以看到这两个文件: 。 HelloWorld.class 。 HelloWorld.java

我错过了什么?

回答

0

你需要做的是,你有

package helloworld; 

,你正试图从命令行 执行它执行以下步骤

首先打开终端或cmd并浏览到该文件夹helloworld。 例子,如果在你的f:/helloworld的HelloWorld文件夹中打开终端,浏览高达f:/(不里面的HelloWorld去)

然后编译类为javac helloworld/HelloWorld.java

,并尝试执行类作为java helloworld.HelloWorld

+0

非常感谢。它工作得很好。 但是我无法进入'helloworld'文件夹并使用: javac HelloWorld.java和java HelloWorld? 什么是helloworld与HelloWorld文件的关系? – YAS 2014-10-03 18:03:00

+0

如果您的班级中有包定义,则需要使用完全限定的班级名称 – SparkOn 2014-10-03 18:07:11

2

您应该指定完全限定的类名。也就是说,你需要像这样运行它:java helloworld.HelloWorld

+0

技术上正确 - 我想推荐使用诸如Gradle这样的任务/依赖/构建管理系统 - 这将使事情变得更容易。 – Centril 2014-10-03 16:20:03

+2

当然,那么'.class'文件需要位于'helloworld/HelloWorld.class'中,而不是'java'命令运行的目录。 – 2014-10-03 16:25:32

+0

你应该只使用ide – vedi0boy 2014-10-03 17:56:24