JSmooth을 이용해 자바 파일을 JAR에서 EXE 파일로 변환하는 방법(EXE 파일 무반응)
이전에 자바 파일을 JAR 파일로 만드는 방법에 대해서 간단히 정리하여 작성한 글이 있습니다. JAVA 파일을 EXE 실행 가능한 파일로 변환하시려면 먼저 JAR 파일을 만드셔야 합니다.
EXE 파일을 만들기 위해서는 반드시 이클립스 툴을 이용해 JAR 파일로 내보내는 방법에 대한 글을 반드시 참고하셔서 먼저 JAR 파일을 만들어 주시고 오시면 됩니다. (http://zzarungna.tistory.com/1272)
작성하는 기준은 JSmooth를 이용하는 방법으로 작성하며 JSmooth 0.9.9-7 버전이며 진행하며 보니 여러 가지 오류가 있더군요. 오류 발생 원인과 오류가 있을 때 해결하는 방법도 같이 작성하였습니다.
JAR 파일을 만드셨다면 http://jsmooth.sourceforge.net/ 사이트에 접속하시기 바랍니다. 사이트에 접속하시고 Download 메뉴 버튼을 눌러 주시면 됩니다.
그런 뒤에 아래 이미지와 같이 visit the download page 링크 버튼을 눌러 주시면 됩니다.
다운로드 링크 페이지로 연결이 되는데 이곳에서 Download Latest Version 버튼을 눌러 주시면 됩니다.
잠시 기다리시면 다운로드가 시작됩니다. JSmooth 설치 파일이 다운로드 될 때까지 기다리시면 됩니다.
다운로드 받은 jsmooth 파일을 더블 클릭하고 실행하시고 별다른 설정 없이 Next 버튼만 눌러 주시면 됩니다.
설치가 완료되고 조금 기다리시면 아래 이미지와 같이 JSmooth 창이 나오게 됩니다. 로딩이 생각보다 많이 깁니다.
조금 기다리시면 아래 이미지와 같이 프로그램 화면이 나옵니다. 제가 만든 JAR 파일은 SWING으로 작성된 파일이며 해당 자바 파일을 이용해 AWT와 콘솔이 아닌 SWING 기준으로 EXE 파일을 만들기 때문에 저와 사용방법이 다를 수 있는 점은 참고하시면 좋을 것 같습니다.
가장 먼저 Skeleton 메뉴를 선택하시면 됩니다. Skeleton Selection 메뉴에서 Windowed Wrapper 메뉴를 선택하시면 됩니다. 그런 뒤에 Launch java app in the exe process 메뉴를 체크해 주시면 됩니다.
두 번째 메뉴인 Executable 메뉴를 선택하시기 바랍니다. exe 파일이 생성될 위치를 지정해 주시기 위해서 점 3개로 이루어진 버튼을 눌러 주시고 생성할 exe 파일 이름을 지정하시고 Select 버튼을 눌러 주시면 됩니다.
그런 뒤에 1. Application 메뉴를 선택하시고 2. Use an embedded jar를 체크해 주시면 됩니다. 3. 생성한 jar 파일을 찾기 위해 버튼을 눌러 주시고 4. 생성한 jar 파일을 선택하시고 5. select 버튼을 눌러 주시면 됩니다.
그럼 아래 이미지와 같이 EXE 파일로 변환할 JAR 파일의 경로가 나오게 됩니다. 여기서 Main class를 반드시 지정해 주셔야 합니다. Main Class를 선택하기 위해서 점 3개로 이루어진 버튼을 눌러 주시면 jar 파일에 들어있는 클래스 파일을 선택하실 수 있습니다.
아래 이미지와 Main class를 선택할 수 있는 폴더가 나오면 더블 클릭해 주시면 됩니다.
저와 같은 경우는 main 클래스가 smilebook 패키지 안에 있습니다. 아래 이미지와 같이 SmileBook main 클래스에 여러 가지가 나오더군요.
위와 같이 메인 클래스 이름이 겹쳐서 나오는 경우는 숫자가 붙어 있지 않은 메인 클래스를 선택해 주시면 됩니다.
그럼 아래 이미지와 같이 Main class가 잘 선택 되었고 jar 파일도 잘 선택 하실 수 있습니다. 직접 찾지 않고 Main Class를 직접 타이핑을 하니 EXE 파일을 실행해도 반응이 없는 EXE 파일이 실행되더군요 그러니 실수를 줄이기 위해서는 먼저 JAR 파일을 선택하시고 Main class가 있는 자바 파일을 선택해 주시는 게 좋습니다.
마지막으로 4번째 메뉴를 선택해 주시고 Minimum JVM Version에 현재 PC에 설치된 JVM 버전을 넣어 주시면 됩니다.
현재 JVM 버전은 JAVA를 설치하신 폴더에서 확인하실 수 있습니다.
이제 EXE 파일을 만들기 위해서 상단에 Project 메뉴에서 Compile 메뉴를 눌러 주시면 됩니다.
그럼 아래 이미지와 같이 저장 폴더를 다시 물어보는데 파일 이름은 아무 이름이나 넣어 주셔도 되는데 반드시 확장자는. exe는 넣어 주시고 저장을 눌러 주셔야 합니다. 이건 좀 오류 같은데 해당 폴더에 저장하고 파일 이름을 지정해도 결국엔 Executable 메뉴에서 지정한 폴더와 EXE 파일명으로 파일이 생성됩니다.
하지만 이 부분에서 EXE 파일을 지정 안 해 주시면 EXE 파일을 만들어도 실행이 되지 않고 만드신 EXE 파일이 반응이 없습니다.
위 과정까지 완료가 되면 아래 이미지와 같이 작업이 완료되었다고 나옵니다.
그럼 아래 이미지와 같이 EXE 파일이 생성된 걸 확인 하실 수 있습니다.
EXE 파일을 실행해보니 제가 SWING으로 만든 프로그램이 잘 실행되네요.
추가로 JSmooth를 이용해 EXE 파일을 만들 때 아래 이미지와 같이 Java has not been foun on your computer. Do you want to download it? 이라는 경고 창이 나오시는 분은 시스템 변수에 JAVA_HOME 경로가 정상적으로 설정이 되어 있는지 확인해 보시기 바랍니다.
JAVA_HOME 경로가 지정되어 있지 않은 경우 아래 이미지와 같이 오류가 나더군요. 자바 환경 변수 설정은 링크된 경로를 참고하시면 도움이 되실 겁니다. JDK 버전 10.0.1버전 기준입니다. - http://zzarungna.tistory.com/1254
JAVA 프로그래밍을 하면서 이클립스 툴을 이용해 JAR 파일을 만들고 JSmooth을 이용해 EXE 실행 파일을 만드는 방법까지 간단히 작성해 보았습니다. 혹시라도 저와 같은 오류가 나거나 저와 비슷한 환경에서 JAR 파일을 만들고 EXE 파일을 만드시는 분 중 오류가 나거나 사용방법이 필요하신 분들은 참고하시면 좋을 것 같습니다.