我有一组指令来创建从CMD行运行应用程序时采用多个参数的Java应用程序。
指令说明:
因此,使用上面的示例集,假设程序的main()方法位于名为JavaClassName的类中,则输出应为:
$ java JavaClassName 4 7 file.csv
program output here
我的问题是:
这不是跳过编译过程吗?
他们是否会假定将Java类加载到以前从未运行过此应用程序的计算机上(或仅包含运行所需的
.java
文件的目录);运行cmd$ java JavaClassName 4 7 file.csv
会输出什么?
旁注:目前,运行该CMD输出
Error: Could not find or load main class JavaClassName
经历了多个SO问题和在线教程,试图使它甚至运行,但我尚未使它起作用。
最佳答案
你问:
这不是跳过编译过程吗?
绝对没错。像java JavaClassName 4 7 file.csv
这样的命令行假定当前目录中(或在CLASSPATH环境变量中找到的某些其他目录或Zip / Jar文件中)存在已编译的类文件“ JavaClassName.class”。是的,要生成该“ JavaClassName.class”类文件,必须首先使用Java编译器。