假定有一个PrintSize.java文件, 现在要编译生成一个jar文件。
一、PrintSize.java文件中没有指定包名。
内容如下:
import java.util.*;
public class PrintSize{
public static void main( String[] args) {
float a = 3.14f;
System.out.println("Hello, bitsof(byte)="+Byte.SIZE);
System.out.println("Hello, bitsof(short)"+Short.SIZE);
System.out.println("Hello, bitsof(integer)"+Integer.SIZE);
System.out.println("Hello, bitsof(long)"+Long.SIZE);
System.out.println("Hello, bitsof(float)"+Float.SIZE);
System.out.println("Hello, bitsof(double)"+Double.SIZE);
}
}
1. $javac PrintSize.java
2. $vi manifest.mf,输入( 空格与回车是必须的)
Main-Class:<空格>PrintSize<回车>
保存退出。
3. $jar cvfm hello.jar manifest.mf *.class
4. 运行$java -jar hello.jar就可以查看结果。
二、如果PrintSize.java指定了包名
内容如下:
package hello;
import java.util.*;
public class PrintSize{
public static void main( String[] args) {
float a = 3.14f;
System.out.println("Hello, bitsof(byte)="+Byte.SIZE);
System.out.println("Hello, bitsof(short)"+Short.SIZE);
System.out.println("Hello, bitsof(integer)"+Integer.SIZE);
System.out.println("Hello, bitsof(long)"+Long.SIZE);
System.out.println("Hello, bitsof(float)"+Float.SIZE);
System.out.println("Hello, bitsof(double)"+Double.SIZE);
}
}
1. $javac PrintSize.java
2. $vi manifest.mf,输入( 空格与回车是必须的)
Main-Class:<空格>hello.PrintSize<回车>
保存退出。
3. $mkdir hello
4. mv *.class hello/
5. $jar cvfm hello2.jar manifest.mf hello
6. 运行$java -jar hello2.jar就可以查看结果。
以上内容全部经验证。
特别强调:
1. 【Main-Class:<空格>PrintSize<回车>】中的空格和回车必须要有。
2. 有包名,一定要与包名相同的文件夹,将class文件放入,再打包。