2014-12-19 4 views
0

표시 할 매니페스트 파일을 작성했습니다.스플래시 화면이 나타나지 않습니다.

Manifest-Version: 1.0 
Main-Class: app.App 
SplashScreen-Image: images/splash.png 

나는 아래의 코드를 작성하고, jar 파일을 실행했을 때,

final SplashScreen splash = SplashScreen.getSplashScreen(); 

if (splash == null) { 
    System.out.println("null"); 
    return; 
} 

Graphics2D g = splash.createGraphics(); 

if (g == null) { 
    System.out.println("null"); 
    return; 
} 

난 항상 얻을 "null"메시지. 내가 뭘 놓치고 있니?

+4

"* 무엇이 누락 되었습니까? *"> 어떤 라인이 NPE를 던 졌는지 설명. –

+1

이미지가 항아리와 올바른 위치에 있는지 확인 했습니까? 코드 자체가 작동 하는지를 확인하기 위해 명령 행에서'-splash : '옵션을 사용해 보셨습니까? – Thomas

+0

분명히''SplashScreen.getSplashScreen()''은 유효한 인스턴스를 반환하지 않고''null''을 반환합니다. 그 방법은 무엇을합니까? 직접 쓰셨습니까? 더 많은 정보를 제공해주세요 (예 : 사용중인 SplashScreen 클래스 또는 라이브러리 코드). ''splash.createGraphics()''를 호출하면 NPE가 던져집니다. – user1438038

답변

-1

생성 된 jar 파일의 MANIFEST.MF 파일에 SplashScreen-Image 항목이 있는지 확인하십시오. 프로젝트의 기존 매니페스트 파일을 수정하지 말고 줄 끝을 추가하는 것을 잊지 마십시오.

Oracle Modifying a Manifest File : 경고 : 매니페스트를 만드는 텍스트 파일은 줄 바꾸기 또는 캐리지 리턴으로 끝나야합니다. 마지막 줄은 새 줄이나 캐리지 리턴으로 끝나지 않으면 제대로 파싱되지 않습니다.

+0

@AndrewThompson 덧글은 답이기 때문에 모두가 대답이므로 더 넓은 공간과 일반 텍스트로 대답하는 것을 선호합니다. –

+0

감사합니다. 새로운 라인이 작동하게 만든다. – user3x7x61x3361

관련 문제