Java 프로그램을 .exe 파일로 변환하려면 어떻게해야합니까? [닫은

StackOverflow https://stackoverflow.com/questions/147181

  •  02-07-2019
  •  | 
  •  

문제

Java 소스 파일 (*.java) 또는 클래스 파일 (*.class)이있는 경우 .exe 파일로 어떻게 변환 할 수 있습니까?

또한 내 프로그램을위한 설치 프로그램이 필요합니다.

도움이 되었습니까?

해결책

Javapackager

Java Packager 도구는 배포를 위해 Java 및 Javafx 응용 프로그램을 컴파일, 패키지 및 준비합니다. javapackager 명령은 명령 줄 버전입니다.

- 오라클의 문서

그만큼 javapackager 유틸리티는 JDK와 함께 배송됩니다. 이와 함께 .exe 파일을 생성 할 수 있습니다 -native exe 다른 많은 것들 중에서도 깃발.

Winrun4J

WinRun4J는 Windows 용 Java 런처입니다. Javaw.exe의 대안이며 다음과 같은 이점을 제공합니다.

  • ClassPath, 메인 클래스, VM Args, 프로그램 Args를 지정하기 위해 INI 파일을 사용합니다.
  • 작업 관리자에 나타나는 사용자 정의 실행 이름.
  • 보다 유연한 메모리 사용을위한 추가 JVM Args.
  • 사용자 정의 아이콘을위한 내장 아이콘 교체기.
  • 더 많은 총알 지점이 따릅니다

- WinRun4J의 웹 페이지

WinRun4J는 오픈 소스 유틸리티입니다. 가지고 있습니다 많은 특징.

packr

Windows, Linux 및 Mac OS X의 배포를위한 JAR, 자산 및 JVM을 포장하여 기본 실행 파일을 추가하여 기본 앱처럼 보이게합니다. PACKR은 GUI 애플리케이션에 가장 적합합니다.

- packr readme

PACKR은 또 다른 오픈 소스 도구입니다.

jsmooth

JSMooth는 Java 실행 파일 래퍼입니다. Java 응용 프로그램을위한 기본 Windows Launcher (Standard .exe)를 만듭니다. 설치된 Java VM 자체를 찾을 수 있으므로 Java 배포를 훨씬 매끄럽고 사용자 친화적으로 만듭니다.

- JSMooth 웹 사이트

JSMooth는 오픈 소스이며 기능이 있지만 매우 오래되었습니다. 마지막 릴리스는 2007 년에있었습니다.

Jexepack

Jexepack Java 응용 프로그램 (클래스 파일)과 선택적으로 리소스 (gif/jpg/txt/etc 등)를 단일로 포장 할 수있는 명령 줄 도구 (자동 스크립팅에 적합)입니다. 압축 Sun의 Java 런타임 환경을 사용하여 실행되는 32 비트 Windows Exe. 콘솔과 창문 응용 프로그램이 모두 지원됩니다.

- Jexepack의 웹 사이트

Jexepack은 시범웨어입니다. 생산 사용에는 지불이 필요 하며이 도구로 생성 된 EXE 파일에는 지불없이 "알림"이 표시됩니다. 또한 마지막 릴리스는 2013 년에있었습니다.

어디에서나 설치하십시오

InstallAnywhere를 사용하면 개발자가 모든 플랫폼에 대한 전문 설치 소프트웨어를 쉽게 만들 수 있습니다. InstallAnywhere를 사용하면 산업 변화에 빠르게 적응하고 시장에 더 빠르게 시장에 진출하며 매력적인 고객 경험을 제공합니다. 배송하기 전에 프로젝트의 OSS 구성 요소의 취약성을 알고 있습니다.

- 설치 웹 사이트

InstallAnywhere는 Java 기반 프로그램을위한 설치자를 생성하는 상업/엔터프라이즈 패키지입니다. .exe 파일을 만들 수있을 것입니다.

실행 가능한 JAR 파일

.exe 파일에 대한 대안으로 두 번 클릭하면 자동으로 실행되는 JAR 파일을 작성할 수 있습니다. 항아리 매니페스트에 진입 점을 추가합니다.


자세한 내용은

이 주제에 대한 훌륭한 정보 소스는 Excelsior의 기사입니다. "Java를 Exe로 변환 - 왜, 언제, 그렇지 않은지, 어떻게".

동반자 기사도 참조하십시오.EXE 변환 도구, 무료 및 상업용 최고의 항아리".

다른 팁

런치 4J

Launch4J는 가벼운 Windows 기본 실행 파이브에서 항아리로 배포 된 Java 응용 프로그램을 포장하기위한 크로스 플랫폼 도구입니다. 실행 파일은 특정 JRE 버전을 검색하거나 번들 버전을 사용하도록 구성 할 수 있으며 초기/최대 힙 크기와 같은 런타임 옵션을 설정할 수 있습니다. 래퍼는 또한 적절한 JRE를 찾을 수없는 경우 애플리케이션 아이콘, 네이티브 프리 -JRE 스플래시 화면, 사용자 정의 프로세스 이름 및 Java 다운로드 페이지를 통해 더 나은 사용자 경험을 제공합니다.

- Launch4J의 웹 사이트

업데이트: GCJ는 죽었다. 그것은 공식적으로 제거되었습니다 2016 년 GCC 프로젝트에서. 그 전에도 7 년 동안 실제로 버려졌으며 어쨌든 충분히 완료되지 않았습니다 실행 가능한 대체 Java 구현 역할을합니다.

다른 Java AOT 컴파일러를 찾으십시오.

GCJ : Java 용 GNU 컴파일러 Java 소스 코드를 Windows 실행 파일을 포함하여 기본 기계 코드로 컴파일 할 수 있습니다.

Java의 모든 것이 GCJ, 특히 GUI 구성 요소에 따라 지원되는 것은 아니지만Java API가 지원되는 것은 무엇입니까? 지원은 얼마나 완전합니까? 질문의 질문 자주하는 질문). 나는 GCJ를 많이 사용하지 않았지만 콘솔 애플리케이션으로 수행 한 제한된 테스트에서 괜찮은 것 같습니다.

독립형 실행 파일을 생성하기 위해 GCJ를 사용하는 단점 중 하나는 결과 EXE의 크기가 상당히 클 수 있다는 것입니다. 한 번은 GCJ에서 Trivial Console 응용 프로그램을 편집했으며 결과는 약 1MB 실행 가능입니다. (이 주위에 내가 알지 못하는 방법이있을 수 있습니다. 또 다른 옵션은 압축 프로그램을 실행할 수 있습니다.)

오픈 소스 설치 프로그램의 관점에서 NULLSOFT 스크립트 설치 시스템 스크립트 가능한 설치 프로그램입니다. 궁금한 점이 있다면 있습니다 사용자는 예제를 기여했습니다 필요한 JRE가 설치되지 않은 경우 JRE의 존재를 감지하고 자동으로 설치하는 방법에 대해. (그냥 알려주기 위해, 나는 전에 NSI를 사용하지 않았습니다.)

Java 응용 프로그램 설치를 위해 NSIS 사용에 대한 자세한 내용은 살펴보십시오. 나의 응답 질문을 위해 "Java 응용 프로그램을 배포하는 가장 좋은 방법은 무엇입니까?"

다음 코드로 배치 파일을 만들 수 있습니다.

start javaw -jar JarFile.jar

.BAT를 .Exe 변환기를 사용하여 .exe로 .exe로 변환하십시오.

우리는 사용하고 있습니다 설치 4J Windows 또는 Unix 환경 용 설치 프로그램을 구축합니다.

표준 대화로 수행 할 수없는 특수 조치를 위해 스크립트를 작성하려는 지점까지 쉽게 사용자 정의 할 수 있습니다. 그러나 Windows 서비스를 설정하더라도 표준 구성 요소 만 사용하고 있습니다.

  • 설치자 + 런처
  • Windows 또는 Unix
  • 자바에서 스크립트가 가능합니다
  • 개미 작업
  • 많은 사용자 정의 가능한 표준 패널 및 동작
  • 선택적으로 JRE를 포함하거나 다운로드합니다
  • Windows 서비스를 시작할 수도 있습니다
  • 여러 언어

Launch4J는 동일한 회사 (런처 - 설치자 없음)에서 출신이라고 생각합니다.

추신 : 슬프게도 나는이 보증에 대한 대가를받지 않습니다. 나는 그 도구를 좋아한다.

최신 자바 웹 시작 우수한 오프라인 작동을 허용하고 "로컬 설치"를 허용하도록 향상되었습니다. 조사 할 가치가 있습니다.

편집 2018 : Java Web Start는 더 이상 최신 JDK와 번들로 번들되어 있지 않습니다. Oracle은 대신 "밀폐 된 JRE"모델을 사용하여 앱을 로컬로 배포하고 있습니다.

전체 응용 프로그램 전체를 기본 코드로 변환 해야하는 경우, 즉 EXE PLUS DLLS가 있습니다. Excelsiorjet. 나는 그것이 잘 작동하고 JRE를 번들링하는 대안을 제공했습니다.

IMHO jsmooth 꽤 좋은 일을하는 것 같습니다.

Launch4J는 Java 소스 코드 (.java)를 .exe 파일로 변환하기위한 가장 좋은 도구라고 말합니다. 배포를 위해 JRE를 묶을 수도 있고 EXE를 가입 할 수도 있습니다. 응용 프로그램의 크기가 증가하지만 사용자가 JRE가 설치되어 있지 않더라도 응용 프로그램이 완벽하게 작동하도록합니다. 또한 사용자가 별도로 설치하지 않고도 앱에 필요한 특정 JRE를 제공 할 수 있습니다. 그러나 불행히도 Java는 중요성을 잃습니다. 멀티 플랫폼 지원은 완전히 무시되며 최종 앱은 Windows에만 지원됩니다. 그러나 Windows 사용자에게만 제공되는 경우에는 큰 문제가 아닙니다.

당신이 사용할 수있는 Janel. 이 마지막은 애플리케이션 런처 또는 서비스 런처 (4.x에서 사용할 수 있음)로 작동합니다.

또는 일부 Java-to-C 번역기 (예 : JCGO) 및 생성 된 C 파일을 대상 플랫폼의 기본 바이너리 (.exe) 파일로 컴파일합니다.

Java 프로그램을 .exe 응용 프로그램으로 전환하는 것에 대해 용서받을 수 있으며 이유가 있습니다. 주요 것은 Java 프로그램을 많은 IDE의 JAR 파일로 컴파일 할 수 있다는 것입니다. 프로그램이 .jar 형식이면 .exe가 아닌 여러 플랫폼에서 실행될 수 있으며, 이는 매우 제한된 환경에서만 실행됩니다. 나는 Java 프로그램 Shoudl이 매우 필요하지 않으면 Exe로 변환되지 않는다는 생각입니다. Java 프로그램이 JAR 파일 인 동안 Java 프로그램을 실행하는 .bat 파일을 항상 쓸 수 있습니다.

이를 EXE로 변환하는 것이 실제로 필요하다면 Jar2Exe 변환기는 조용히 수행하며 기본 응용 프로그램과 함께 컴파일 된 라이브러리를 첨부 할 수도 있습니다.

JAR을 EXE로 전환 할 수 있습니다 jar2exe. 그러나 소프트웨어를 구매해야합니다. 오픈 소스 소프트웨어가 필요한 경우 제안하겠습니다. jsmooth.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top