Một thay đổi lớn trong Java 9 là Hệ thống Module (Module System), cung cấp JVM mô-đun có thể chạy trên các thiết bị có bộ nhớ hạn chế. JVM chỉ chạy với những module và API mà ứng dụng yêu cầu.
module Module-Name { requires moduleName; exports packageName; }
Dưới đây là một số ưu và nhược điểm của Hệ thống Module.
Ưu điểm của Module:
- Thay đổi chính trong Java 9 là nó trở thành một hệ thống module với JDK mô-đun, mã nguồn mô-đun và hình ảnh chạy mô-đun.
- Các API nội bộ được ẩn trong một module.
- Hệ thống module tạo ra nhiều cơ hội hơn cho phát triển các dự án xử lý dữ liệu phân tán. Ví dụ, Java 9 mới đã được áp dụng để xây dựng các giải pháp IoT và nền tảng cần xử lý nhiều dữ liệu đồng thời.
- Các module trong Java giờ đây làm cho các phương thức public bên trong một module và hạn chế truy cập cho người dùng thông thường.
Nhược điểm của Module:
- Sau khi phát hành Java 9, các phiên bản Java trước đó không còn được hỗ trợ, và khách hàng có thể phải dành thời gian và tài nguyên để di chuyển.
- Nếu dự án vẫn đang trong giai đoạn phát triển, việc di chuyển sẽ không quá khó khăn. Nhưng di chuyển có thể là một vấn đề nghiêm trọng đối với các giải pháp đã triển khai.
- Vấn đề phụ thuộc lẫn nhau giữa các sản phẩm và thư viện chương trình chưa được giải quyết, khiến việc cài đặt sản phẩm mới và gỡ bỏ sản phẩm cũ trở nên khó khăn.