How do I run .class files on windows from command

2019-01-18 03:16发布

问题:

I'm trying to run .class file from command line. It works when I manually move to the directory it's stored in, but when I try something like this:

java C:\Peter\Michael\Lazarus\Main

it says it can't find the main class. Is there any solution to this other than making a .jar file (I know that .jar is the best solution, but at this moment isn't the one I'm looking for)?

回答1:

The Java application launcher (a.k.a java.exe or simply java) expects a class name as its argument, so you can't pass it a file name (especially not one that includes a directory.

You can tell it where to look for that class by using the -classpath option (or its short form -cp) however:

java -classpath C:\Peter\Michael\Lazarus\ Main


回答2:

Assuming that Main.class does not have a package declaration:

java -cp C:\Peter\Michael\Lazarus\  Main

Java looks for classes in a "classpath", which can be set on the command line via the -cp option.



回答3:

I just had the same issue, I tried running java hello.class, this is wrong.

The command should be java hello.

Do not include the file extension. It is looking for a class file, and will add the name on its own.

So running 'java hello.class' will tell it to go looking for 'hello.class.class' file.



回答4:

Try this:

java -cp C:\Peter\Michael\Lazarus Main

You need to define the classpath.