2012-09-15 22 views
14

Tôi mới bắt đầu sử dụng Juno trong một vài ngày, cơ chế hỗ trợ nội dung có vẻ khác với cơ chế hoạt động trước đó.Nội dung Eclipse hỗ trợ tự động gắn thêm kiểu cho biến

Ví dụ, nếu tôi cố gắng để khai báo một biến

Boolean isVisible 

Nội dung hỗ trợ của Juno sẽ cung cấp cho bạn một danh sách thả xuống với các tên biến

isVisibleBoolean 

như gợi ý.

Và điều rất khó chịu là không có vấn đề gì tôi gõ vào (hoặc SPACE), "isVisibleBoolean" sẽ được chọn.

Có ai biết làm cách nào để vô hiệu hóa tính năng tự động biến kiểu bổ sung?

Được đánh giá cao.

Tôi hiện đang sử dụng Mac OS X 10.8.1, chưa thử nghiệm trong cửa sổ.

+1

Không chắc chắn về Juno, ở Luna, bạn có thể bỏ chọn 'Window-> Preference-> Java-> Editor-> Content Assist-> Insert single suggestions automatically'. – BrainSlugs83

+0

Cảm ơn câu trả lời, tôi đã chuyển từ nhật thực sang intelliJ,: D – hjbolide

Trả lời

6

Dựa trên các cuộc thảo luận cho Eclipse Bug 412992, kiểm tra nội dung của bạn Hỗ trợ các thiết lập tự động kích hoạt: Window-> Preferences-> Java-> tổng biên tập> Content Assist

Nếu, ví ví dụ, ký tự az được liệt kê là "Trình kích hoạt tự động cho Java", bạn có thể xóa chúng và tên loại sẽ không được tự động nối vào tên biến mới khi bạn nhấn '' hoặc ';'. Đó là vào bạn để xác định cấu hình tốt nhất/cân bằng cho phong cách của bạn dựa trên các tùy chọn có sẵn.

+1

cảm ơn Buzz, có vẻ như "đó là một tính năng không phải là lỗi". – hjbolide

+2

Điều này kinda sucks - nó giống như mặc định suck, và họ không thể được cấu hình để không hút - nhưng có một vài lựa chọn trên làm cho họ hút ít hơn - @ Daniel câu trả lời dưới đây cho thấy chỉ đưa "." và nhân vật trong đó, đó là một khởi đầu khá tốt - hoặc trong Luna - có một tùy chọn trong menu hỗ trợ nội dung "Insert Single Proposals Automatically" có vẻ như bạn bỏ chọn điều này, vấn đề sẽ biến mất. – BrainSlugs83

-2

Những gì bạn thấy có tên hoàn thành cho các loại đối tượng. Và điều này thường có ý nghĩa, ví dụ: nhấn Ctrl-Space sau List book sẽ hoàn thành điều đó thành List bookList. Đối với các kiểu nguyên thủy, điều này không được thực hiện, do đó, int count sẽ không nhận được bất kỳ hoàn thành nào khi nhấn Ctrl-Space. Đây sẽ là một giải pháp (không thực sự tốt) đối với vấn đề của bạn bằng cách khai báo biến như boolean primitve.

Điều tôi thực sự khuyên bạn nên làm giải pháp là thay đổi phong cách viết khai báo biến. Ví dụ: thay vào đó, hãy viết isVisible = false, yêu cầu trình chỉnh sửa khiếu nại về khai báo loại bị thiếu, nhấn Ctrl - (từ bất cứ nơi nào có thể đặt con trỏ), Nhập.

+1

Hi Bananeweizen, Cảm ơn sự giúp đỡ của bạn ở đó, tôi đã làm ví dụ ở đó, có thể bạn đã sử dụng Hibernate trong một thời gian dài, trong trường hợp này bạn muốn để làm điều gì đó như @Id @GeneratedValue (strategy = XXX) Dài id. Sau đó nhật thực sẽ cung cấp cho bạn IdLong dài, có ý nghĩa hoàn hảo cho khả năng đọc mã, nhưng thực sự không phải là chúng tôi muốn, phải không? Và với đề xuất, tôi nghĩ điều đó chắc chắn sẽ hiệu quả, nhưng nó rất chậm và không cần thiết để làm điều đó cho mọi lĩnh vực. – hjbolide

1

Không phải là một giải pháp hoàn hảo:

Window-> Preference-> Java-> tổng biên tập> Content Assist-> Kích hoạt Auto Gây nên cho Java: .ABCDEFGHIJKLMNOPQRSTUVWXYZ

Bằng cách này, chỉ có các lớp học và các loại sẽ được xuất hiện cho các đề xuất.

Chỉ là một đề xuất, lựa chọn tùy thuộc vào bạn.

+1

Không phải là một ý tưởng tồi (giả sử chúng tôi đang sử dụng TitleCase cho mọi thứ - Tôi cho hầu hết các phần, đó là chống lại các tiêu chuẩn, nhưng điều này là khá hữu ích trong trường hợp đó) - Một lựa chọn thứ hai là đi vào cùng một trình đơn và bỏ chọn "Chèn các đề xuất đơn một cách tự động" - có vẻ như điều này cũng làm cho vấn đề biến mất. – BrainSlugs83