[英]How do I run a Java program from the command line on Windows?
我正在尝试从 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();
}
}
}
假设您的文件位于 C:\\mywork\\
运行命令提示符
这使得 C:\\mywork 成为当前目录。这将显示目录内容。 您应该在文件中看到 filenamehere.java。
这告诉系统在哪里可以找到 JDK 程序。
这将运行编译器 javac.exe。 您应该只看到下一个系统提示...
javac 创建了 filenamehere.class 文件。 您应该在文件中看到 filenamehere.java 和 filenamehere.class。
这将运行 Java 解释器。 然后你应该看到你的程序输出。
如果系统找不到 javac,请检查 set path 命令。 如果 javac 运行但出现错误,请检查 Java 文本。 如果程序编译但出现异常,请检查文件名和类名中的拼写和大小写以及 java HelloWorld 命令。 Java区分大小写!
要完成答案:
Java 文件
- 将 Java 文件编译为 *.class 文件
这将创建一个
TheJavaFile.class<\/code>文件
<\/li><\/ul><\/li>
Java 文件的执行
创建可执行的
*.jar<\/code>文件
你有两个选择 -
使用外部清单文件:
创建清单文件说 - MANIFEST.mf
MANIFEST 文件不过是主类的显式条目
可由入口点执行:
运行 Jar 文件
编译<\/strong>一个 Java 文件以生成一个类:
javac filename.java
如果您的 Java 类在某个包中。 假设名为ABC.java
的 Java 类存在于com.hello.programs
中,那么您需要使用包名运行它。
用通常的方式编译它:
C:\SimpleJavaProject\src\com\hello\programs > javac ABC.java
但是要运行它,您需要给出包名,然后是您的 java 类名:
C:\SimpleJavaProject\src > java com.hello.programs.ABC
从 Java 11 开始,
java<\/code>命令行工具已经能够直接运行单文件源代码。
例如
java HelloWorld.java
假设文件名为“CopyFile.java”,请执行以下操作:
javac CopyFile.java
java -cp . CopyFile
第一行将源代码编译成可执行的字节码。 第二行执行它,首先将当前目录添加到类路径中(以防万一)。
这很容易。 如果您已将文件保存为 A.text,您首先应该将其保存为 A.java。 现在它是一个 Java 文件。
现在您需要在编译之前打开 cmd 并设置 A.java 文件的路径。 你可以参考这个<\/a>。
然后你可以使用命令编译你的文件
javac A.java
然后使用
这就是您在 cmd 中编译和运行 java 程序的方式。 您还可以通过这些材料<\/a>深入学习 Java 课程。 那里为初学者介绍了许多您需要了解的 Java 内容。
您可以在命令行中使用 javac 编译任何 java 源代码; 例如,javac CopyFile.java。 运行:java CopyFile。 您还可以使用 javac *.java 编译所有 java 文件,只要它们位于同一目录中
如果您遇到“无法找到或加载主类”的问题,您的路径中可能没有 jre。 看看这个问题: 找不到或加载主类<\/a>
在 Windows 7 上,我必须执行以下操作:
快捷方式<\/strong>
很长的路要走<\/strong>
当您升级 JDK 安装但您现在可以访问所有命令行工具时,这可能会中断。
按照上面关于如何编译文件的评论(“javac MyFile.java”然后是“java MyFile”) https:\/\/stackoverflow.com\/a\/33149828\/194872<\/a>
<\/a> 第 1 步:首先打开文件所在的命令提示符。 (按住shift的同时右击)
第 2 步:然后使用以下命令执行。 (假设要执行的文件和类名为Student.java)示例程序在图片背景中。
javac Student.java
java Student
从 Java 9 开始,JDK 包括jshell
,一个 Java REPL。
假设 JDK 9+ bin
目录已正确添加到您的路径中,您将能够简单地:
jshell File.java
— File.java
当然是你的文件。main
方法: jshell> File.main(null)
。/exit
可以在此处找到 JShell 的完整文档。
现在(从 JDK 9 开始),您可以使用 java 来执行它。 为了执行包含main的“Hello.java”,可以使用:java Hello.java
您不再需要使用 javac 单独编译。
您实际上可以像运行 shell 或 python 脚本一样运行 Java 程序,而无需手动编译 Java 文件,如JEP 330<\/a>中所述。 从 JDK 11 开始就可以使用了。
如果你创建了一个
testing<\/code>文件,并把下面的内容当成
testing<\/code>命令运行应该就可以了。
您需要使用
chmod +x testing<\/code>使其在 Linux 和 Mac OSX 中可执行。
#!/usr/bin/env java --source 11
public class Test {
public static void main(String [] args) {
System.out.println("Hello world!");
System.exit(0);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.