Tôi gặp khó khăn khi sử dụng chức năng hotswap trong Phiên bản Cộng đồng Intellij IDEA. Mỏ là v 14.1.4.Hotswap/DCEVM không hoạt động trong Intellij IDEA (Phiên bản Cộng đồng)
Mỗi lần sau khi tôi tắt gỡ lỗi và thay đổi mã java, tôi đã nhấp vào xây dựng lại dự án và nhấn "Có" khi xác nhận các lớp tải lại. Intellij báo cáo rằng các lớp đã thay đổi được tải lại, nhưng kết quả ứng dụng cũng giống như trước đây. Tôi chỉ đang thử ứng dụng Java đơn giản nhất (ví dụ: không có trong các kịch bản như Tomcat, applet, v.v.) với các nội dung đơn giản như System.out.println
, chuỗi concats v.v. Những gì tôi đã thay đổi trong chế độ gỡ lỗi chỉ là mã cơ thể của phương thức chứ không phải chữ ký phương thức/Tên. Tôi không hiểu được.
Trong Eclipse tôi chỉ trực tiếp thay đổi mã và nhấn lưu, sau đó nó chỉ hoạt động.
Điều gì đã xảy ra?
(Ghi chú:
Trong thực tế, tôi đang cố gắng sử dụng DCEVM mà làm thay đổi cấu trúc có thể (ví dụ như tên lớp thay đổi, tên phương pháp, thêm các phương pháp vv), nghĩ rằng nó sẽ giải quyết vấn đề của vấn đề hotswap tìm thấy trong Intellij. không cần phải nói, nó đã không làm việc.
trong nhật thực, tôi thành công trong việc sử dụng DCEVM và có thể thay đổi tên phương pháp trong gỡ lỗi.
tôi cũng thử hotswap-agent và nó vẫn didn' Tôi đã đi qua một bài báo nói rằng IDE phải JDPA-kết nối với JVM qua cổng 5000, nhưng không có vấn đề làm thế nào tôi tri ed, Intellij console cho thấy rằng nó vẫn đang kết nối thông qua một cổng ngẫu nhiên (51.018 dưới đây):
"C:\Program Files\Java\jdk1.8.0_60\bin\java" -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:51018...."
kết nối vào máy chủ đích, địa chỉ: '127.0.0.1:51018', giao thông: 'ổ cắm'
Có thể buộc nó kết nối qua một cổng cụ thể không? Thêm biến DEBUG_OPT
môi trường trong Run/Debug Config không hoạt động)
Eclipse (theo như tôi nhớ) sẽ giảm các khung cần thiết để thoát khỏi mã lỗi thời. –