类路径无效标志 - Java

Classpath invalid flag - Java

我正在使用 javac 编译一个名为 Rengine.jar 的文件。

我试过了:

javac –classpath ./REngine.jar
javac –cp ./REngine.jar
javac ./REngine.jar
javac –classpath REngine.jar

下面是我得到的错误:


javac: invalid flag: –classpath
Usage: javac <options> <source files>
use -help for a list of possible options

javac: invalid flag: –cp
Usage: javac <options> <source files>
use -help for a list of possible options

javac: invalid flag: ./REngine.jar
Usage: javac <options> <source files>
use -help for a list of possible options

javac: invalid flag: –classpath
Usage: javac <options> <source files>
use -help for a list of possible options

我对 Java 完全不熟悉,而且我无法通过 Google 搜索找到此问题的答案。我确切地说我在正确的目录中并且我正在使用 Mac OSX。我的 Java 版本是 1.8.0_20。 任何建议将不胜感激! :)

javac - Java源代码编译器,将Java源文件*.java编译成JVM字节码class文件*.class

要执行 Java 程序,您需要使用 java YourClass.

调用 class 文件

Jar 文件是一个 Java archive 文件。其中包含其他文件。例如 class 个文件。如果你想从 Jar 文件中 运行 class 有两种方法。

可执行 Jar

java –jar REngine.jar

这取决于 Jar 中的清单文件,它定义了应该执行的主要 class。

class 在 Jar 文件中

java –cp REngine.jar package.YourClass

这将执行 class package.YourClass(假设 class 有一个 main 方法)。

首先,您无法编译.jar 文件。 .jar 文件是已编译的 .java 文件(.class 文件)的集合。但是,如果您的清单文件设置正确,您可以 运行 一个 .jar 文件。

流程如下:
编译:

javac MyClass.java 

上面的行创建了 MyClass.class

使用清单文件创建 JAR:

jar cfe myJar.jar myClass myClass.class  

运行 罐子:

java -jar myJar.jar

指定选项和源文件,这样试试:

javac -classpath ./lib/* file.java

如果您遇到任何问题,请尝试指定编译器将使用的工件:

javac -classpath ./lib/myjar.jar file.java