Java

no main manifest attribute in 오류 발생

I장군T 2022. 4. 8. 10:57
반응형

jar 파일 생성 후 no main manifest attribute in 오류가 발생하는 경우가 있다

서버에서 jar를 풀었다가 다시 만드니 발생...

원인:

jar가 실행(java -jar aaa.jar)될때 main method를 못 찾아서 그렇다

jvm이 jar를 실행할때 main method를 찾기 위해 MAINFEST.MF 파일을 읽는다.

여기에 명시되지 않아 오류가 발생

나같은 경우는 jar를 다시 묶을때 MANIFEST.MF 정보가 다시 생성되면서 기존 정보가 날라감

해결:

jar를 다시 묶을때 MANIFEST.MF를 생성하지 않고 기존껄 쓰면 된다.

jar cvmf ./META-INF/MANIFEST.MF ./aaa.jar ./

jar 옵션:

c : 새로운 jar 패키지 파일을 생성

t : jar 패키지내의 파일 리스트를 출력

x : jar 패키지의 압축을 품

f : c, t, x 옵션에 대해 사용할 jar 파일 이름을 지정

v : jar 패키징 도구 수행중 수행 관련 메세지를 출력

m : mainfest 파일 이름을 지정

O : 압축하지 않고 묶기만 함

M : mainfest 파일을 생성하지 않음

u : jar 패키지의 내용을 업데이트

i : 해당 jar 파일과 Class-Path 필드를 통해 참조되는 jar 파일에 대한 정보를 INDEX.LIST 파일로 생성

-C : 지정된 디렉토리의 파일들을 포함

반응형