2010-08-31 26 views
6

Tôi sử dụng tính năng gỡ lỗi Java Swap Hot với ứng dụng web trên Tomcat. Sau khi một số thay đổi chữ ký lớp, tôi nhận được hộp thoại Eclipse "Hot Code Replace Fail" - tôi hiểu điều đó.Eclipse Hot Code Replace Fail - tái xuất bản ứng dụng web

Điều tôi muốn trong trường hợp này là tái xuất bản ứng dụng (tôi có thể làm điều đó) và làm việc với mã mới được triển khai. Tuy nhiên, trình gỡ lỗi stil phàn nàn, cho đến khi tôi khởi động lại máy chủ. Bởi vì các ứng dụng khác và khởi động lâu dài tôi không muốn điều đó.

Có cách nào để nói với trình gỡ lỗi, rằng có phiên bản lớp mới đã được tải lại trong trình nạp lớp webapp mới và có lưu lại để tiếp tục không?

Cảm ơn.

Trả lời

2

Tại sao bạn không thử với JRebel? JRebel là một JVM Java Agent tích hợp với các máy chủ ứng dụng, làm cho các lớp có thể nạp lại được với các trình nạp lớp hiện có. Chỉ các lớp được thay đổi mới được biên dịch lại và tải lại ngay lập tức trong ứng dụng đang chạy. JRebel cắm vào IDE và xây dựng hệ thống. Các lớp và tài nguyên tĩnh được tải thẳng từ vùng làm việc. http://zeroturnaround.com/software/jrebel/

Kính trọng, Andrea

0

Có một dự án PHD cũ. Người tạo ra nó đã được Oracle đưa ra nhưng công việc của anh ta đã không làm cho nó thành Java 8 và hy vọng sẽ được thấy trong Java 9 nhưng có nhiều khả năng là trong Java 10. Có một phiên bản mới này cho Java 8 tôi đoán. Tôi chưa thử nó.

Câu hỏi của tôi gốc để biết thêm thông tin: Advanced Code Hot Swapping in JDK 8?

Và trang Dự án Github: https://github.com/dcevm/dcevm

Với điều này bạn có thể thay thế nóng gần như bất kỳ sự thay đổi lớp giải phóng bạn khỏi khởi động lại JDK mãi mãi về sau. (bên cạnh tác dụng phụ đối với các objets tĩnh và độc thân nhưng điều đó sẽ hợp lý)

0

Bạn đã thử Tùy chọn máy chủ - Phân phát các mô-đun mà không xuất bản cùng với Xuất bản phải không?

Server Options
Publishing

Cũng không chắc chắn những gì bạn đang nói về các ứng dụng khác.

+0

bạn đúng: trong màn hình này bạn có thể thay đổi tham số để tự động phản ánh thay đổi trong máy chủ mà không cần khởi động lại nhưng không phải là thứ bạn đã nói. Đó là trong phần xuất bản, thay đổi từ không bao giờ xuất bản để tự động xuất bản khi tài nguyên thay đổi –

+0

Xin lưu ý tùy chọn "Cung cấp mô-đun mà không xuất bản" –

+0

Tôi mặc dù điều này chỉ dành cho tài nguyên bên trong thư mục WebContent chứ không phải cho các lớp java –

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