日期:2014-05-17 浏览次数:20781 次
今天下载了个开源包,试着去运行它自带的examples,当然要在命令行下用ant来build。
平时做java开发都是用的eclipse,很少用命令行工具。遇到不会的地方用java查看它的命令参数也能解决一部分问题。
build之后,在生成的class文件夹下运行java ClassName,一直报错找不到class,想想觉得好笑,这么基础的问题居然一直没学习过。赶紧补上吧。
当然,问题的解决方法不难。网上查了查,发现是木有指定classpath,并且Class文件中有包名。
解决方法如下:
1. 将编译好的class文件所在文件夹加到-classpath参数下,如 -classpath F:\test\class
2. 在运行编译好的class文件之前,先建立包名对应的文件夹,如 com,把class文件移动到com文件夹下
3. 运行命令 java -classpath F:\test\class com.ClassName
注:如果需要引用其他的jar包,把jar的路径加到classpath中就行了,用;号隔开。
再看看打jar包,和运行jar包的问题。
还是用刚才那个例子,生成jar包:jar -cvr test.jar com
再修改test.jar中的MANIFEST.MF,最后一行加上:Main-Class: com.ClassName
命令行中运行java -jar test.jar
注:如果需要引用其他的jar包,可以将引用的一同打入test.jar,再在MANIFEST.MF加入:Class-Path: ./lib/xxx.jar