我正在尝试从Windows中的命令行执行Java程序。这是我的代码:

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

public class CopyFile
{
    public static void main(String[] args)
    {

        InputStream inStream = null;
        OutputStream outStream = null;

        try
        {

            File afile = new File("input.txt");
            File bfile = new File("inputCopy.txt");

            inStream = new FileInputStream(afile);
            outStream = new FileOutputStream(bfile);

            byte[] buffer = new byte[1024];

            int length;
            // copy the file content in bytes
            while ((length = inStream.read(buffer)) > 0)
            {

                outStream.write(buffer, 0, length);

            }

            inStream.close();
            outStream.close();

            System.out.println("File is copied successful!");

        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
    }
}

我不知道如何执行这个程序——有什么帮助吗?这在Windows上可行吗?为什么它与其他环境不同(我以为JVM是一次编写,随处运行)?


当前回答

编译一个Java文件来生成一个类:

javac filename.java

执行生成的类:

java filename

其他回答

第一步:首先打开文件所在的命令提示符。(按住shift键右键点击) 步骤2:然后使用以下命令执行。 (假设要执行的文件和类名为Student.java)示例程序在图片背景中。

     javac Student.java
     java Student

完整回答:

The Java File TheJavaFile.java Compile the Java File to a *.class file javac TheJavaFile.java This will create a TheJavaFile.class file Execution of the Java File java TheJavaFile Creation of an executable *.jar file You've got two options here - With an external manifest file : Create the manifest file say - MANIFEST.mf The MANIFEST file is nothing but an explicit entry of the Main Class jar -cvfm TheJavaFile.jar MANIFEST.mf TheJavaFile.class Executable by Entry Point: jar -cvfe TheJavaFile.jar <MainClass> TheJavaFile.class To run the Jar File java -jar TheJavaFile.jar

假设文件名为“CopyFile.java”,执行以下操作:

javac CopyFile.java
java -cp . CopyFile

第一行将源代码编译为可执行的字节代码。第二行执行它,首先将当前目录添加到类路径(以防万一)。

现在(从JDK 9开始),您可以使用java来执行该命令。 为了执行包含main的"Hello.java",可以使用: java Hello.java

你不再需要单独使用javac进行编译。

编译一个Java文件来生成一个类:

javac filename.java

执行生成的类:

java filename