2010-04-26 27 views
6

Tôi phải ghi một ứng dụng Java trên đĩa CD. Ứng dụng này phải chạy trên mọi máy tính Windows không cài đặt bất kỳ cài đặt nào (cũng không nên cài đặt JRE) trước đây.Cách làm cho ứng dụng Java độc lập?

+0

ứng dụng dành cho máy tính để bàn? – Xorty

+1

tôi bắt đầu nghĩ rằng đây là cơ bản giống như: http://stackoverflow.com/questions/2258932/embed-a-jre-in-a-windows-executable Cả hai đều là về phân phối một ứng dụng Java như Windows .exe launcher (với JRE đi kèm trong). – Jonik

+1

Tôi không tập trung vào việc nhận tệp .exe. Tôi chỉ muốn chạy jre mà không có jdk. Tôi đã giải quyết nó bằng một tập tin batch và startet với lệnh jdk/java.exe bla.jar – rakete

Trả lời

5

Tôi đoán bạn có thể sao chép JRE từ thư mục chương trình của bạn vào đĩa CD. Sau đó, thêm tập lệnh batch để sử dụng JRE "cục bộ" của bạn để khởi động ứng dụng. Đó là đủ, nhưng tôi không biết nếu điều này làm việc với tất cả các phiên bản của cửa sổ.

+0

Vấn đề không phải là Windows, mà sẽ chạy một chương trình thực thi Win32 PE từ bất cứ đâu. Nhưng liệu JRE có đưa ra các giả định bổ sung? – MSalters

4

Bạn sẽ phải bó jre trên đĩa và tạo ra các kịch bản khởi động. Nếu bạn không hài lòng với các kịch bản lệnh khởi động batch/shell đơn giản, bạn có thể sử dụng một cái gì đó như JLauncher để tạo ra "thực sự" thực thi.

+1

+1. Nếu một công cụ thương mại là ok, install4j là tốt cho việc tạo một launcher .exe (với JRE kèm theo) cho các ứng dụng Java. Xem ví dụ như câu trả lời này: http://stackoverflow.com/questions/2258932/embed-a-jre-in-a-windows-executable/2258946#2258946 – Jonik

+0

Ah, tôi nên đã exe4j khuyến cáo của cùng một công ty thay vì: http : //www.ej-technologies.com/products/exe4j/overview.html Không có nhiều khác biệt so với quan điểm kỹ thuật (khi nói đến việc khởi chạy), nhưng chi phí thấp hơn nhiều so với install4j. – Jonik

1

Chỉ cần ghi một jre vào đĩa CD và khởi động ứng dụng của bạn bên trong một tập lệnh batch, đặt CLASSPATH và các biến JAVA_HOME trỏ đến jre của bạn.

3

Cách dễ nhất là bao gồm cài đặt Java chưa giải nén trên đĩa CD và sử dụng nó để chạy ứng dụng.

Chỉ có AFAIK 2 trình biên dịch "Java để exe" vẫn còn trên thị trường, một trong số đó (Excelsior JET) khá đắt, và cái kia (GCJ) không hoạt động trên các Chương trình sử dụng AWT hoặc Swing.

+0

Ngoài ra (ít nhất) install4j không "Java để exe". Theo hiểu biết của tôi, đó là công cụ trình cài đặt/khởi chạy Java tốt nhất. – Jonik

+1

@Jonik: Phần mềm mà Michael Borgwardt đề cập đến là các trình biên dịch, tạo ra mã nguồn gốc từ các nguồn Java. install4j tạo một exe-launcher để khởi động Java-Bytecode với JVM thích hợp. Điều đó là đủ trong hầu hết các trường hợp, nhưng thực sự không phải là "Java để thoát" mà Michael có trong tâm trí. – Mnementh

+0

@Mnementh, ah, cảm ơn vì đã làm rõ. Nhìn vào câu hỏi ban đầu, tôi không nghĩ rằng OP sẽ cần "Java-to-native-code" thực sự. – Jonik

4

JSmooth có thể thực hiện thủ thuật với gói JRE hoặc nhắc cài đặt Java và là miễn phí. Bạn cũng có thể đặt thuộc tính cho JVM

Các vấn đề liên quan