Tôi có một ứng dụng mà tôi muốn mở rộng bằng cách cho phép người dùng định nghĩa các lớp trong Groovy, cuối cùng là triển khai một số giao diện.Biên dịch và sử dụng các lớp Groovy từ Java lúc chạy?
Khía cạnh chính là nó phải được diễn giải/biên dịch khi chạy. I E. Tôi cần ứng dụng của mình để lấy số .groovy
và biên dịch nó. Làm nó trong khi khởi động là ok.
Sau đó, tất nhiên, ứng dụng của tôi sẽ có thể khởi tạo lớp đó.
tôi thấy hai giải pháp:
1) Biên soạn trong khi chạy ứng dụng, đưa các lớp học ở đâu đó trên classpath, và sau đó chỉ cần tải các lớp học, giả vờ họ đã luôn ở đó.
2) Một số cách thông minh hơn - gọi API trình biên dịch và một số phép thuật nạp lớp để cho trình nạp lớp hệ thống của tôi xem chúng.
Tôi làm cách nào để thực hiện tùy chọn 2)?
Bất kỳ ý tưởng nào khác?