2011-12-10 63 views
6

Tôi gặp sự cố khi chạy ứng dụng của mình trong nhật thực. Tôi thực hiện một số chỉnh sửa như sau:Eclipse chạy phiên bản cũ của chương trình

String res = "newvalue"; 
System.out.println(res); 

Nhưng khi tôi chạy ứng dụng tôi vẫn nhận được "giá trị cũ" ở đầu ra. Sau này tôi đã cố gắng để xóa main() chức năng - và tôi chạy ứng dụng và tôi thấy "oldvalue" trong đầu ra một lần nữa.

Có thể đó là một số bộ nhớ cache trong JVM hoặc smth. khác?

UPD:

Đó là 15:35 trên đồng hồ của tôi bây giờ. Nhưng trong/bin thư mục tôi thấy các tập tin .class với 14:33 dấu thời gian. Tôi thay đổi file nguồn (java), nhấn ctrl + f11 trong nhật thực và các tập tin trong thư mục/bin vẫn 14:33 là ...

UPD2:

Sau khi làm sạch các dự án tôi nhận được vấn đề sau đây :

Dự án không được xây dựng do "Không thể ghi tệp: D: \ projects \ NelderMead \ bin \ ru.". Sửa chữa vấn đề, sau đó thử làm mới dự án này và xây dựng nó vì nó có thể không phù

SOLUTION

Vấn đề là nhật thực toàn phần không thể viết tập tin vào thư mục với các không gian và ký tự UTF trong tên của nó . Vì vậy, tôi sao chép dự án vào không gian làm việc sạch mới và nó chạy mà không có vấn đề! Thx tất cả để giúp phát hiện vấn đề!

+0

Có thể bạn đang chạy dự án/tệp khác. – adatapost

+0

Đăng một [SSCCE] (http: // sscce.org /) và thử làm sạch và xây dựng sau khi bạn thực hiện thay đổi. – nebula

Trả lời

5

Bạn đang thực hiện một tập tin lớp học cũ, lý do có thể là

  • một lỗi biên dịch ở một nơi khác (xem vấn đề xem)

  • hay thay đổi của bạn vô tình là nguồn gốc con đường để các mới nguồn không còn được biên dịch.

Cố gắng dọn dẹp dự án và đảm bảo các lớp mới được biên dịch vào thư mục đầu ra của bạn. JVM không có bộ nhớ cache cho các tệp lớp.

2

Trước tiên, hãy đảm bảo tệp là được lưu (không có dấu hoa thị bên cạnh tên tệp trong tab). Thông thường các tệp được lưu tự động, nhưng bạn có thể chọn không lưu các tệpkhông bao giờ yêu cầu do nhầm lẫn, lần đầu tiên Eclipse bật lên hộp thoại này.

enter image description here

Sau đó xem những gì đang xảy ra trong xem vấn đề. Bạn có thể thấy một cái gì đó như project cannot be built due to the following reason. Nó có thể là do lỗi biên dịch trong các dự án phụ thuộc.

enter image description here

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