2012-10-22 65 views
7

Tôi đã sử dụng 7zip để giải nén jre-6u12-windows-i586-p.exe (Trình cài đặt Oracle JRE). Khi giải nén, tôi có một tệp core.zip, một tệp zip.exe và một vài tệp khác.Tại sao tất cả các tệp jar không được nén trong trình cài đặt JRE?

Một lần nữa trên phát nổ core.zip Tôi đã tìm thấy một vài điều. core.zip chứa tất cả các tệp jar giống như nó sẽ sau khi cài đặt ngoại trừ 7 tệp jar.

charsets.jar 
deploy.jar 
javaws.jar 
jsse.jar 
localedata.jar 
plugin.jar 
rt.jar 

Thay vì những tập tin jar có tồn tại các packfiles tương ứng

charsets.pack 
deploy.pack 
javaws.pack 
jsse.pack 
localedata.pack 
plugin.pack 
rt.pack 

Tôi nghĩ rằng đây là những file được tạo ra bởi pack200.exe & unpack200.exe đang chạy trên chúng sau khi cài đặt để tạo ra các tập tin jar tương ứng .

Vì vậy, bây giờ tôi có một vài câu hỏi

  1. Tại sao chỉ là những 7 file chạy qua pack200.exe. Tôi giả sử nó bởi vì chúng lớn hơn các tệp khác. Nhưng nó sẽ không mất nhiều nỗ lực để đóng gói tất cả các tập tin jar & giải nén chúng sau khi cài đặt.

  2. Tiện ích mở rộng .pack cho biết các gói này được đóng gói nhưng không được nén. Một lần nữa tại sao Oracle cũng không làm một gzip? ví dụ với gói rt.jar giảm kích thước từ 45 MB xuống 12 MB, trong khi thêm gzip cũng giảm xuống còn 6 MB.

+1

Có lẽ đối với trình cài đặt, việc giảm kích thước là không đáng kể (sau khi tất cả bản thân trình cài đặt đã được đóng gói, rõ ràng). Và các lọ thời gian chạy hoạt động tốt hơn khi có sẵn ở dạng không nén - không cần giải nén chúng ở mỗi và mọi JVM đều bắt đầu. – Sebastian

+0

@Sebastian Trình cài đặt có thể được nén và có thể giải nén chúng như một phần của cài đặt bài đăng. Sau đó, sẽ không cần phải giải nén chúng tại mỗi & mọi JVM Start. – user93353

Trả lời

1

Một số tệp jar được đề cập có vẻ là vị trí, ngôn ngữ hoặc máy cụ thể. Có lẽ Oracle bao gồm nhiều phiên bản trong các tập tin gói cho trình cài đặt để lựa chọn? Điều này có thể được kiểm tra bằng cách giải nén các tệp .pack. Oracle có thể sử dụng một công cụ để đóng gói các trình cài đặt bao gồm các công cụ tĩnh như (tức là các tệp jar), nhưng bao gồm các công cụ cụ thể dưới dạng tệp .pack. Chỉ là một số ý tưởng, có lẽ không có cách nào để biết mà không làm việc ở đó.

+0

Không, tôi đã giải nén tập tin gói và kiểm tra. – user93353

+0

Bạn đã kiểm tra để xem quy trình làm việc nội bộ của oracle? –

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