2011-12-13 26 views
5

Tôi đang đặt biến môi trường trong tệp .bat sử dụng setsetx được thực thi bởi ứng dụng java của tôi.Cho eclipse tải lại các biến môi trường

Nhưng lần sau khi chạy ứng dụng, các biến môi trường quay lại giá trị cũ của chúng - tôi phải khởi động lại Eclipse để các thay đổi có hiệu lực.

Làm thế nào tôi có thể nói nhật thực để tải lại các biến môi trường mỗi khi tôi chạy ứng dụng của mình?

+0

Tôi có chính xác không? Chương trình của bạn thực hiện một tệp batch được bao gồm trong dự án Eclipse của bạn và khi bạn cập nhật tệp batch với các giá trị mới cho các biến môi trường của bạn, nó có vẻ không hoạt động như mong đợi khi bạn chạy chương trình của bạn? – Laf

+0

Bản thân tập tin batch cập nhật các biến môi trường. – jhasse

Trả lời

3

Biến môi trường được đặt bằng "bộ" được đặt cho quy trình hiện tại và con của nó. Nếu bạn rời khỏi quá trình, các giá trị sẽ bị mất.

Lệnh "setx" đặt biến môi trường trong môi trường hệ thống. Nhưng các giá trị được đọc vào quá trình chỉ khi khởi động lại. Vì vậy, nhật thực vẫn có các biến môi trường cũ và bắt đầu các quá trình sẽ kế thừa chúng.

+1

Vì vậy, không có cách nào để sửa chữa nó? – jhasse

+0

AFAIK không có cách nào để thay đổi cài đặt môi trường của quy trình gốc. –

0

Bạn có thể thoát và bắt đầu nhật thực thay vì khởi động lại nhật ký. Nó chỉ nên làm việc tốt sau đó.

+0

Không phải là "thoát và bắt đầu" chính xác giống như "khởi động lại" ??? – jhasse

+0

Tôi nghĩ là vậy. Nhưng dường như nhật thực không tải lại các biến môi trường cho tôi khi tôi khởi động lại nhật thực của mình. Bạn có thể thử chạy lệnh với thiết bị đầu cuối có sẵn của nhật thực và xem nó có hoạt động hay không. Tôi thoát khỏi nhật thực và sau đó bắt đầu lại và nó hoạt động. –

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