如何在java文件中包含jar文件并在命令提示符下编译
我有3个jar文件和一个依赖于这些jar文件的.java文件。 如何使用命令提示符使用这些jar文件编译.java文件?
10个解决方案
86 votes
您可以将jar文件包含在" javac" 命令使用" -cp" 选项。
javac -cp ".:/home/path/mail.jar:/home/path/servlet.jar;" MyJavaFile.java
而不是" -cp" 你也可以使用" -classpath"
javac -classpath ".:/home/path/mail.jar:/home/path/servlet.jar:" MyJavaFile.java
每次编译时都可以通过设置环境变量" CLASSPATH"来包括罐子。正确。 环境变量将存储需要用于编译/执行任何java文件的jar和类的路径。 每次编译文件时都不必单独包含jar。
不同的机器有不同的方法将类路径设置为环境变量。Windows,Linux等的命令是不同的。
您可以在此博客中找到更多详细信息。
http://javarevisited.blogspot.com/2011/01/how-classpath-work-in-java.html
kensen john answered 2019-08-09T17:43:03Z
18 votes
请试试Linux
javac -cp jarfile source file
示例: -
javac -cp .:/jars/* com/template/*.java
Jamsheer answered 2019-08-09T17:43:35Z
15 votes
语法适用于windows dos命令:
javac -cp ".;first.jar;second.jar;third.jar" MyJavaFile.java
user2573056 answered 2019-08-09T17:43:58Z
14 votes
尝试通过环境变量设置将所有依赖jar文件添加到类路径中,或使用以下步骤:
打开命令提示符。
将目录更改为java的位置您要编译的文件。
设置依赖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文件。 (command:javac YourJavaFile.java)
希望这将解决您的依赖问题。
Sarath Kumar Sivan answered 2019-08-09T17:45:06Z
7 votes
以下是步骤,
将所有jar和.java文件复制到同一个文件夹中(很容易提到文件名而不是提到长路径。虽然你可以将jar和.java保存在不同的文件夹中)。
编译,
java -cp .:.jar:.jar
执行,
java -cp .:.jar:.jar
我希望这有帮助!
imbond answered 2019-08-09T17:46:02Z
4 votes
这将创建.class文件:
javac -classpath "[jarname with specified path]" [java filename]
这将执行类文件:
java -cp [jarname with specified path]: [java filename]
Isaq answered 2019-08-09T17:46:34Z
4 votes
试试这个。
javac -cp .:jars/jar1:jars/jar2:jars/jar3 com/source/*.java
Shravya answered 2019-08-09T17:46:54Z
1 votes
您需要在编译时和运行时指定依赖项
要编译使用此格式
javac -cp "*.jar;classfile_path" filename.java
例:
javac -cp "ojdbc6.jar;c:\programs" Main.java
ArockiaRaj answered 2019-08-09T17:47:27Z
0 votes
如果您使用的是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
注意:请参阅文件位置和包名称
srihari answered 2019-08-09T17:48:06Z
0 votes
有时候进行以下更改工作:
java -cp ".;%CLASSPATH%" classfilename
注意:在Windows上。 对于linux使用$CLASSPATH而不是。
Guru answered 2019-08-09T17:48:38Z