做'java -cp公司.HelloWorld'编译并运行Java应用程序?我想不是.我只需要双重确认



我按照这篇文章和这篇文章来构建一个Java应用程序。

以下是我公司/HelloWorld中的所有内容.java

package company;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World");
}
}

通常,运行 java 程序需要 2 个步骤:

  1. javac 文件,例如javac company/HelloWorld.java
  2. Java 类文件,例如java company.HelloWorld

正如预期的那样,它给了我"你好,世界"。

似乎java -cp可以批量执行上述 2 个步骤,尽管我的 env 似乎无法识别此命令

java -cp company.HelloWorld

和输出

用法: java [-options] 类 [args...]

根据@hayrettinm的回答,这是另一个版本。

package company.HelloWorld;

也没用。我错过了什么?

为什么我认为java -cp可以编译和运行? 这篇文章给出了这个例子

PS C:Lecture_javaLecture001Hello> & 'C:Usersubuntu.vscodeextensionsvscjava.vscode-java-debug-0.23.0scriptslauncher.bat' 'C:Program FilesJavajdk-13.0.1binjava' '-Dfile.encoding=UTF-8' '-cp' 'C:Lecture_javaLecture001Hellobin' 'app.App'

实验结束后,我想java -cp company.HelloWorld无法编译和运行,它只能运行一个 Java 应用程序。有人可以给一个 双重确认。

java -cp 不做你写的。

javac 可执行文件是将类编译为字节码的编译器, Java 可执行文件基本上是理解您编译的字节码的运行时。

此外

如果要使用包com.company.HelloWorld你必须在类中编写这样的包降级:

package com.company.HelloWorld;

相关内容

最新更新