如何用java文件包含jar文件并在命令提示符下编译
我有3个jar文件和依赖于这些jar文件的.java文件。 如何使用命令提示符编译带有这些jar文件的.java文件?
您可以使用“-cp”选项将您的jar文件包含在“javac”命令中。
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
您可以通过正确设置环境variables“CLASSPATH”在每次编译时joinjar。 环境variables将存储需要用来编译/执行任何java文件的jar和类的path。 每次编译文件时,您都不必单独包含这些jar子。
不同的机器有不同的方法来将类path设置为环境variables。 Windows,Linux等的命令是不同的。
你可以在这个博客中find更多的细节。
http://javarevisited.blogspot.com/2011/01/how-classpath-work-in-java.html
请在Linux上尝试
javac -cp jarfile source file
例子: –
javac -cp .:/jars/* com/template/*.java
尝试通过环境variables设置将所有依赖关系jar文件添加到您的类path,或使用以下步骤:
- 打开命令提示符。
- 改变目录到你想编译的java文件的位置。
-
为您的依赖关系jar文件设置类path,如下所示:
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
)
希望这将解决您的依赖性问题。
语法将工作在Windows DOS命令:
javac -cp ".;first.jar;second.jar;third.jar" MyJavaFile.java
这将创build.class文件:
javac -classpath "[jarname with specified path]" [java filename]
这将执行类文件:
java -cp [jarname with specified path]: [java filename]
尝试这个。
javac -cp .:jars/jar1:jars/jar2:jars/jar3 com/source/*.java
如果你使用的是Ubuntu:
/opt/JavaServices/sqlite> export CLASSPATH=/opt/JarFiles/XXXX.jar:/opt/JarFiles/XXXX.jar:/opt/JavaServices/;javac SQLiteSample.java Go to folder location (Out of package structure) /opt/JavaServices> export CLASSPATH=/opt/JarFiles/XXXXX.jar:/opt/JarFiles/XXXXX.jar:/opt/JavaServices/;java sqlite.SQLiteSample
注意:请参阅文件位置和软件包名称