2011-02-02 54 views
5

Tôi luôn tự hỏi "các chế độ triển khai" khác nhau (Chế độ phát hành, Chế độ gỡ lỗi, v.v.) nằm trong các IDE khác nhau (Visual Studio, Netbeans, v.v.). Tôi chắc chắn rằng họ có nghĩa là những thứ khác nhau dựa trên ngôn ngữ và nền tảng IDE hỗ trợ, nhưng phải có một ý định cơ bản chung với việc đánh dấu một dự án là "Gỡ lỗi" trái ngược với chế độ "Phát hành".Chế độ gỡ lỗi và gỡ lỗi trong IDE

Sự khác biệt giữa các chế độ này là gì? IDE xử lý chúng khác nhau như thế nào tại thời gian biên dịch/chạy/triển khai? Có cách nào để bạn tùy chỉnh Chế độ của riêng mình ("Chế độ Dev", "Chế độ QA", v.v ...) không? Nếu vậy, thiết lập tùy chỉnh điển hình là gì?

Cảm ơn!

Trả lời

1

Trong hầu hết các trường hợp, bạn có thể sử dụng chế độ này để bật và tắt một số thông tin gỡ lỗi (ghi nhật ký).

Theo tôi nhớ đúng: Trong .net/Visual Studio, bạn có thể sử dụng nó ngay cả để xác định các phần mã được biên dịch phụ thuộc vào một số biến được kiểm soát bởi chế độ này. @see "Design Mode" preprocessor directive

+0

Cảm ơn @Ralph! Bản ghi được tạo có phải là loại thông tin gỡ lỗi duy nhất bị bỏ qua trong Chế độ phát hành hoặc có nhiều "công cụ" hơn không? Đối với các bản ghi, loại nhật ký loại lỗi nào, NetBeans sản xuất và những gì trong các nhật ký này? – Pam

+0

@Pam xem câu trả lời nâng cao của tôi – Ralph

3

Thông thường Chế độ gỡ lỗi chứa tất cả các dạng thông tin gỡ lỗi có thể có, được loại bỏ trong Chế độ phát hành.

Đây là một thừa kế từ các ngôn ngữ gốc như C nơi bạn chạy mã bạn tạo. Nó ít nhiều là một vấn đề với Java khi sử dụng điển hình là thông qua một JVM thực hiện một bước biên dịch bổ sung.

Gỡ rối thông tin có thể rất tiện dụng ngay cả đối với một chế độ phát hành xây dựng, vì nó cho phép JVM cung cấp thông tin chi tiết hơn trong ngăn xếp dấu vết, vv

+0

Cảm ơn! Trong một câu trả lời khác cho câu hỏi này, @Ralph cũng đề cập rằng Chế độ phát hành loại bỏ cái gọi là "thông tin gỡ lỗi" này. Bạn có thể (hoặc bất kỳ ai khác!) Giải thích về thông tin này là gì và nó bao gồm những gì? Hãy lấy NetBeans/Java chẳng hạn. Cảm ơn! – Pam

+0

Thông tin gỡ lỗi cho các lớp Java là xa như tôi biết, thông tin số dòng cho mã byte và tên của các biến và tham số cục bộ. Rất, rất hữu ích khi bước qua trong một trình gỡ lỗi ngay cả khi không có nguồn. –

+0

Vì vậy, nếu tôi hiểu bạn một cách chính xác, bạn nên giữ phiên bản "Gỡ lỗi" của một thành phần sản xuất để, ngay cả trong môi trường sản xuất mà bạn không có quyền truy cập vào nguồn, bạn vẫn có thể đính kèm một trình gỡ rối vào nó và sử dụng thông tin gỡ lỗi? Cảm ơn! – Pam

3

Trong IDE nào đó (Chủ yếu là C, C++) chế độ gỡ lỗi cũng khởi tạo các biến 0. Bạn cần phải ghi nhớ điều đó nếu một cái gì đó hoạt động trong chế độ gỡ lỗi và không ở chế độ Release.

0

Bạn có thể đặt debug="off" trong build.xml tệp.

Cho biết liệu nguồn có nên được biên soạn với thông tin gỡ lỗi hay không; mặc định là tắt.

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