JAR 파일로 프로그램 실행
자바 Application을 개발 후 JAR 파일로 묶어 실행하는 방법에 대해 알아보겠습니다. 예제에서는 간단히 파일 하나만 테스트 하겠지만 실제는 여러 개의 파일들이 있는 경우에 유용하게 쓰일 수 있습니다.
1. 우선 간단한 Java Application을 만듭니다.
public class Test {
public static void main(String[] args) {
System.out.println(“Hello World!!”);
}
}
2. 컴파일 후 JAR로 묶습니다.
C:\test>jar cvf test.jar ./Test.class
3. JAR를 실행 하려면 클래스패스를 주어야 하죠…
Java –classpath .;test.jar Test
4. 참고로 main 메소드가 있는 클래스를 인자로 주지않고 jar 파일 자체로도 실행이 가능한데 이때는 manifest 파일을 만들고 jar 파일을 만들 때 옵션을 더 주어야 합니다.
testmanifest 파일
Manifest-Version : 1.0
Created-By : 1.4.0
Main-Class : Test 여가에서 실행될 Main Class를 지정
5. 다시 jar 파일을 만듭니다.
c:\test>jar cvfm test.jar testmanifest .\Test.class
6. jar 파일 자체를 실행
java –jar test.jar
참고로 manifest 파일 내에 Class Path를 줄 수도 있는데 지정할 클래스패스가 하나인 경우엔 문제가 없지만 여러 개인 경우엔 주의해야 하는데 그 형태는 다음과 같습니다.
testmanifest 파일
Manifest-Version : 1.0
Created-By : 1.4.0
Main-Class : Test
Class-Path : c:\oracle\lib\ojdbc14.jar c:\java\lib\component.jar
각 클래스패스 지정 단위를 공백으로 띄우면서 죽 이어서 쓰시면 됩니다
자바 Application을 개발 후 JAR 파일로 묶어 실행하는 방법에 대해 알아보겠습니다. 예제에서는 간단히 파일 하나만 테스트 하겠지만 실제는 여러 개의 파일들이 있는 경우에 유용하게 쓰일 수 있습니다.
1. 우선 간단한 Java Application을 만듭니다.
public class Test {
public static void main(String[] args) {
System.out.println(“Hello World!!”);
}
}
2. 컴파일 후 JAR로 묶습니다.
C:\test>jar cvf test.jar ./Test.class
3. JAR를 실행 하려면 클래스패스를 주어야 하죠…
Java –classpath .;test.jar Test
4. 참고로 main 메소드가 있는 클래스를 인자로 주지않고 jar 파일 자체로도 실행이 가능한데 이때는 manifest 파일을 만들고 jar 파일을 만들 때 옵션을 더 주어야 합니다.
testmanifest 파일
Manifest-Version : 1.0
Created-By : 1.4.0
Main-Class : Test 여가에서 실행될 Main Class를 지정
5. 다시 jar 파일을 만듭니다.
c:\test>jar cvfm test.jar testmanifest .\Test.class
6. jar 파일 자체를 실행
java –jar test.jar
참고로 manifest 파일 내에 Class Path를 줄 수도 있는데 지정할 클래스패스가 하나인 경우엔 문제가 없지만 여러 개인 경우엔 주의해야 하는데 그 형태는 다음과 같습니다.
testmanifest 파일
Manifest-Version : 1.0
Created-By : 1.4.0
Main-Class : Test
Class-Path : c:\oracle\lib\ojdbc14.jar c:\java\lib\component.jar
각 클래스패스 지정 단위를 공백으로 띄우면서 죽 이어서 쓰시면 됩니다
'Programming > JAVA' 카테고리의 다른 글
디렉토리 복사 예제(java.io) (0) | 2008.04.28 |
---|---|
문자변수 비교 방법(Null Point Exception 예방하기) (0) | 2008.04.28 |
윤년 구하는 메소드 (0) | 2008.04.28 |
상속관계가 있는 클래스의 배열도 상속? (0) | 2008.04.28 |
생성자에서 오버라이드된 메소드를 호출 (0) | 2008.04.28 |