我有3个jar文件和一个依赖于这些jar文件的.java文件。如何使用命令提示符编译带有这些jar文件的.java文件?
答案 0 :(得分:88)
您可以使用“-cp”选项在“javac”命令中包含jar文件。
javac -cp ".:/home/path/mail.jar:/home/path/servlet.jar;" MyJavaFile.java
您也可以使用“-classpath”
代替“-cp”javac -classpath ".:/home/path/mail.jar:/home/path/servlet.jar:" MyJavaFile.java
每次编译时都可以通过正确设置环境变量“CLASSPATH”来包含jar。环境变量将存储需要用于编译/执行任何java文件的jar和类的路径。每次编译文件时都不必单独包含jar。
不同的计算机有不同的方法将类路径设置为环境变量。 Windows,Linux等的命令是不同的。
您可以在this blog中找到更多详情。
http://javarevisited.blogspot.com/2011/01/how-classpath-work-in-java.html
答案 1 :(得分:18)
请试试Linux
javac -cp jarfile source file
示例: -
javac -cp .:/jars/* com/template/*.java
答案 2 :(得分:15)
语法适用于windows dos命令:
javac -cp ".;first.jar;second.jar;third.jar" MyJavaFile.java
答案 3 :(得分:14)
尝试通过环境变量设置将所有依赖jar文件添加到类路径中,或使用以下步骤:
设置依赖jar文件的类路径,如下所示:
set classpath=C:\Users\sarath_sivan\Desktop\jars\servlet-api.jar; C:\Users\sarath_sivan\Desktop\jars\spring-jdbc-3.0.2.RELEASE; C:\Users\sarath_sivan\Desktop\jars\spring-aop-3.0.2.RELEASE;
现在,您可以编译您的java文件。 (命令:javac YourJavaFile.java
)
希望这能解决你的依赖问题。
答案 4 :(得分:7)
以下是步骤,
将所有jar和.java文件复制到同一个文件夹中(很容易提到文件名而不是提及长路径。虽然你可以将jar和.java保存在不同的文件夹中)。
要编译,
javac -cp .:<file_1_name>.jar:<file_2_name>.jar <prog_name>.java
执行,
java -cp .:<file_1_name>.jar:<file_2_name>.jar <prog_name>
我希望这有帮助!
答案 5 :(得分:4)
这将创建.class文件:
javac -classpath "[jarname with specified path]" [java filename]
这将执行类文件:
java -cp [jarname with specified path]: [java filename]
答案 6 :(得分:4)
试试这个。
javac -cp .:jars/jar1:jars/jar2:jars/jar3 com/source/*.java
答案 7 :(得分:1)
您需要在编译时和运行时
中指定依赖项要编译使用此格式
javac -cp "*.jar;classfile_path" filename.java
示例:
javac -cp "ojdbc6.jar;c:\programs" Main.java
答案 8 :(得分:1)
javac -cp jars/jar1:jars/jar2:jars/jar3 abc.java
答案 9 :(得分:0)
如果您使用的是Ubuntu:
/opt/JavaServices/sqlite $ export CLASSPATH=/opt/JarFiles/XXXX.jar:/opt/JarFiles/XXXX.jar:/opt/JavaServices/;javac SQLiteSample.java
转到文件夹位置(包外结构)
/opt/JavaServices $ export CLASSPATH=/opt/JarFiles/XXXXX.jar:/opt/JarFiles/XXXXX.jar:/opt/JavaServices/;java sqlite.SQLiteSample
注意:请查看文件位置和包名称
答案 10 :(得分:0)
有时可以进行以下更改:
java -cp ".;%CLASSPATH%" classfilename
注意:在Windows上。对于Linux,请使用$CLASSPATH
。
答案 11 :(得分:-1)
对于Windows