简体   繁体   English

无法从命令行运行Java类

[英]Cannot run java class from command line

I created a package in Eclipse and ran my HelloWorld just fine from Eclipse. 我在Eclipse中创建了一个程序包,并在Eclipse上很好地运行了HelloWorld。

When I went to a command prompt and navigated to that folder and ran javac HelloWorld.java, it compilied without issue. 当我转到命令提示符并导航到该文件夹​​并运行javac HelloWorld.java时,它已编译成功。

When I ran java HelloWorld, I got Error: Could not find or load main class HelloWorld 当我运行Java HelloWorld时,出现错误:无法找到或加载主类HelloWorld

I also tried java Hello.HelloWorld thinking that it might be because it had a package declaration 我还尝试了Java Hello.HelloWorld,它可能是因为它具有包声明

package Hello; 
public class HelloWorld { 
    public static void main(String[] args) { 
       System.out.println("Hi there. How you doin?");
   } 
}

When you run javac , use the switch -d to specify that you would like to create the folder structure for package. 运行javac ,使用-d开关指定要创建包的文件夹结构。 javac reference . javac参考

Eg javac -d . HelloWorld.java 例如javac -d . HelloWorld.java javac -d . HelloWorld.java

When you say -d . 当您说-d . , compiler creates the classes with package directory structure in the current path. ,编译器会在当前路径中创建具有包目录结构的类。

Once you have the compiled classes, use java Hello.HelloWorld to run the program. 拥有已编译的类后,请使用java Hello.HelloWorld运行该程序。

Suggests you to start the package name with lower case. 建议您以小写字母开头的软件包名称。

You must run the code outside the Hello folder 您必须在Hello文件夹外运行代码

java Hello/HelloWorld

You should have HelloWorld.class inside Hello directory. 您应该在Hello目录中具有HelloWorld.class

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM