编译java文件的命令都知道,是javac aaa.java .
但是,如果你这个java文件中,引入其他的jar包,需要用到-cp命令。
加载单个jar包。需要下载用到的jar包,并引入目录。
javac -cp C:\Users\whr-pc\Desktop\classpath\img\json-lib-2.4-jdk15.jar Xml2Json.java
加载多个jar包,中级用 ; 符号隔开。
javac -cp C:\Users\whr-pc\Desktop\classpath\img\json-lib-2.4-jdk15.jar;jdom-1.0.jar;spring-json-1.3.1.jar Xml2Json.java
生成class文件后,执行class文件,也需要用 -cp 命令加载jar包。就可以了
java -cp .;pinyin4j-2.5.0.jar Hello
//
转载:http://hck.iteye.com/blog/1566801
java -cp .;c:\dir1\lib.jar Test
-cp 和 -classpath 一样,是指定类运行所依赖其他类的路径,通常是类库,jar包之类,需要全路径到jar包,window上分号“;”
分隔,linux上是分号“:”分隔。不支持通配符,需要列出所有jar包,用一点“.”代表当前路径。
虽然现在都有eclipse之类的IDE了,但有时候后会手工编译和运行一些程序,很多人包括多年开发经验的人都不知道怎么在命令行参
数运行类。有点杯具……
使用范例:
java -cp ..\lib\hsqldb.jar org.hsqldb.Server -database mydb
或
java -cp ../lib/hsqldb.jar org.hsqldb.Server -database.0 mydb -dbname.0 mydb
写法:
java -cp .;myClass.jar packname.mainclassname
classpath中的jar文件能使用通配符,如果是多个jar文件,要一个一个地罗列出来,从某种意义上说jar文件也就是路径。
要指定各个JAR文件具体的存放路径,相同路径有多个可使用通配符
java -cp .;c:\classes\myClass.jar;d:\classes\*.jar packname.mainclassname