一尘不染

如何在Windows上从命令行运行Java程序?

java

我正在尝试从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只写一次,可以在任何地方运行)?


阅读 626

收藏
2020-02-29

共2个答案

一尘不染

假设你的文件位于C:\ mywork \

运行命令提示符

C:\> cd \mywork

这使C:\ mywork成为当前目录。

C:\mywork> dir

这将显示目录内容。你应该在文件中看到filenamehere.java

C:\mywork> set path=%path%;C:\Program Files\Java\jdk1.5.0_09\bin

这告诉系统在哪里可以找到JDK程序。

C:\mywork> javac filenamehere.java

这将运行编译器javac.exe。除了下一个系统提示,你什么都看不到…

C:\mywork> dir

javac已创建filenamename.class文件。你应该在文件中看到filenamehere.javafilenamehere.class

C:\mywork> java filenamehere

这将运行Java解释器。然后,你应该看到程序输出。

如果系统找不到javac,请检查set path命令。如果javac运行但出现错误,请检查Java文本。如果程序可以编译但出现异常,请检查文件名和类名以及Java HelloWorld命令的拼写和大小写。Java区分大小写!

2020-02-29
一尘不染

要完成答案:

  1. Java文件
TheJavaFile.java
  1. 将Java文件编译为* .class文件
javac TheJavaFile.java
  • 这将创建一个TheJavaFile.class文件

  • Java文件的执行

java TheJavaFile
  1. 创建可执行*.jar文件

  2. 你在这里有两个选择

    1. 使用外部清单文件:

    2. 创建清单文件说-MANIFEST.mf

    3. MANIFEST文件不过是Main Class的显式条目

    4. jar -cvfm TheJavaFile.jar MANIFEST.mf TheJavaFile.class

  3. 可通过入口点执行:

    • jar -cvfe TheJavaFile.jar <MainClass> TheJavaFile.class
  4. 运行Jar文件

java -jar TheJavaFile.jar
2020-02-29