2010-05-21 37 views
6

Tôi dường như không thể tìm thấy bất cứ điều gì trên google cho tôi biết lý do tại sao điều này có thể và độ phân giải là gì. Tôi đang bước qua mã của bên thứ ba (rằng tôi có nguồn cho) và thực sự muốn thấy dòng hiện tại đang được thực hiện ...Eclipse gỡ lỗi - dòng: không có sẵn

Nhìn cờ biên dịch javac, tôi thấy cờ -g: none. Nếu cờ này được đặt, điều này có đủ để giải thích tại sao tôi không thể thấy số dòng? Nếu vậy, tại sao một người nào đó làm điều này, có ý nghĩa hiệu quả? Tôi có cần phải biên dịch lại bản thân mình để đính kèm thông tin gỡ lỗi còn thiếu (nếu có thể) không?

Cảm ơn!

Trả lời

7

Nhìn cờ biên dịch javac, tôi thấy cờ -g: none. Nếu cờ này được đặt, điều này có đủ để giải thích tại sao tôi không thể thấy số dòng?

Vâng, đó là lý do.

Nếu có, tại sao ai đó làm việc này?

Có lẽ tác giả của thư viện muốn làm cho bình của mình càng nhỏ càng tốt. Hiệu suất sẽ không khác nhiều nếu bạn biên dịch mà không cần chuyển đổi -g:none.

+0

Roger. Có bất kỳ điều gì tôi có thể làm ngắn gọn để biên dịch lại bản thân mình không? Có lợi ích hiệu suất để sử dụng cờ này không? – Mike

+0

Điều duy nhất bạn có thể làm là tự xây dựng bình và bao gồm thông tin gỡ lỗi. – tangens

+0

Gotcha, cảm ơn! – Mike

1

Tôi sẽ tưởng tượng sẽ có tác động hiệu suất, nhưng thông tin gỡ lỗi sẽ chắc chắn làm cho tệp lớp của bạn lớn hơn. Đó là một động cơ khác.

Ngoài ra, các công ty muốn bảo vệ nguồn của họ thường sẽ không biên dịch thông tin gỡ lỗi để tháo gỡ (kỹ thuật đảo ngược) ít có giá trị hơn cho một người có động lực (đây cũng là lý do tương tự một số công ty làm xáo trộn bytecode của họ).

Rõ ràng nếu nguồn có sẵn cho bạn, điểm trên không liên quan. Nếu mã nguồn là mã nguồn mở, bạn không nên có quá nhiều rắc rối khi biên dịch cho mình thư viện (sau khi tất cả, mọi người đóng góp khác sẽ cần để có thể làm điều đó!). Và vâng, đó là lựa chọn tốt nhất của bạn vào thời điểm này.

+0

Phải, nhưng tôi có thể không có quyền truy cập RCS vào nguồn và tất cả các hướng dẫn lắp ráp (kiến hoặc maven) - chỉ là một bình nguồn. Nếu đó là trường hợp, nó có thể là cần thiết để xem xét liệu dự án có một máy chủ svn hoặc cvs mà các kịch bản xây dựng có thể được kéo từ ... – Mike

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