Sẽ sử dụng tùy chọn -classpath
với java
, thêm hoặc thay thế nội dung của biến số CLASSPATH
env?Tùy chọn đường dẫn Java-class
Trả lời
Sử dụng biến classpath sẽ ghi đè biến CLASSPATH of Environment nhưng chỉ cho phiên đó. Nếu bạn khởi động lại ứng dụng, bạn cần phải thiết lập lại biến classpath.
Có. Trích dẫn từ trang java(1)
người đàn ông:
-classpath classpath
-cp classpath
Specifies a list of directories, JAR archives, and ZIP archives to search for class files. Class
path entries are separated by colons (:). Specifying -classpath or -cp overrides any setting of the
CLASSPATH environment variable.
If -classpath and -cp are not used and CLASSPATH is not set, the user class path consists of the cur-
rent directory (.).
Biến môi trường là * không * cập nhật ở tất cả, theo điều này. Tôi không thấy câu trả lời là "có". –
@ S.Lott - Từ quan điểm của ai? Từ quan điểm * của chương trình *, giá trị CLASSPATH (nếu nó tồn tại) được thay thế. Từ điểm * của * xem của giá trị CLASSPATH không thay đổi. Tôi nghĩ rằng câu hỏi ban đầu chỉ là một từ ngữ xấu. – Nate
Hoặc một trong các tùy chọn được sử dụng, không phải cả hai.
Chỉ định-classpath hoặc -cp ghi đè bất kỳ cài đặt nào của biến môi trường CLASSPATH.
...
Tùy chọn -classpath được ưa thích vì bạn có thể thiết lập nó riêng cho mỗi ứng dụng mà không ảnh hưởng đến các ứng dụng khác và không có các ứng dụng khác thay đổi giá trị của nó.
...
Thiết lập biến CLASSPATH hoặc sử dụng các tùy chọn dòng lệnh -classpath ghi đè mặc định, vì vậy nếu bạn muốn bao gồm các thư mục hiện tại trong con đường tìm kiếm, bạn phải bao gồm " . " trong cài đặt mới.
Việc sử dụng tùy chọn -cp sẽ không ảnh hưởng đến biến môi trường CLASSPATH.
Bạn có thể thử đoạn mã nhỏ này để kiểm tra này:
public class CPTest {
public static void main (final String[] args) {
String cp = System.getenv("CLASSPATH");
System.out.println(cp);
}
}
%echo $CLASSPATH
/home/test/:.
Sản lượng mà không lựa chọn -cp:
%java CPTest
/home/test/:.
Sản lượng với tùy chọn -cp:
%java -cp /home/xanadu:. CPTest
/home/test/:.
Đầu ra là giống nhau cho cả hai lời gọi (một với -cp và một không có).
Ngoài ra một trong hai con đường được quy định trong CLASSPATH biến môi trường là
sử dụng hoặc các đường dẫn cụ thể với -cp tùy chọn được sử dụng. Nó không phải là một kết hợp của cả hai nó là một trong số họ.
Điều này hiển nhiên từ lời gọi bên dưới. Nếu CWD (hiện tại thư mục làm việc "")
được loại trừ khỏi tùy chọn -cp, launcher JVM (tức là java) không thể tìm thấy tập tin
lớp mặc dù các biến môi trường CLASSPATH chứa CWD ("") trong đó.
%java -cp /home/test CPTest
Exception in thread "main" java.lang.NoClassDefFoundError: CPTest
- 1. Sự khác biệt giữa đường dẫn lớp và tùy chọn đường dẫn của javac
- 2. Tùy chọn java -jar có thay đổi tùy chọn đường dẫn
- 3. Chọn đường dẫn thư mục với savefileDialog
- 4. Cách xác định đường dẫn tùy chỉnh trong đường ray?
- 5. Biểu mẫu đường ray (chọn/tùy chọn) - cách đánh dấu tùy chọn đã chọn bằng HAML?
- 6. Thêm tùy chọn trống vào đường ray chọn thẻ
- 7. Với Spring 3.0, tôi có thể tạo biến đường dẫn tùy chọn không?
- 8. biến đường dẫn tùy chọn trong mùa xuân-MVC RequestMapping URITemplate
- 9. Tham số tùy chọn tuyến đường Backbone.js
- 10. Tùy chọn cho | (đường ống) lệnh
- 11. Chọn nhiều tùy chọn trong một đường ray collection_select
- 12. Đặt đường dẫn hình ảnh tùy chỉnh trong Hướng đạo
- 13. kẹp giấy tùy chỉnh: đường dẫn và: url
- 14. C# 4.0 Tham số tùy chọn - Cách chỉ định tham số tùy chọn loại "hướng dẫn"?
- 15. đường với tham số tùy chọn - Chơi 2.1 Scala
- 16. tùy chỉnh đường dẫn url bằng tên người dùng
- 17. pip install tùy chỉnh bao gồm đường dẫn
- 18. Rails 3.1 Đường dẫn mẫu tùy chỉnh ActionMailer?
- 19. Chrome tương đương với Firefox Firebug CSS chọn đường dẫn
- 20. Thêm thư mục vào đường dẫn đường dẫn nội dung?
- 21. Thay đổi Đường dẫn MongoDB?
- 22. Thêm đường dẫn tới AC_CHECK_LIB
- 23. Đường dẫn FillPath và đường nét Stroke
- 24. Nhận đường dẫn UNC từ đường dẫn cục bộ hoặc đường dẫn được ánh xạ
- 25. symfony 2 đường dẫn lesscss
- 26. Đường ray - Đường dẫn gốc cụ thể w/URL tùy chỉnh: '/ trang tổng quan'
- 27. tại sao không có tên đường dẫn cho các tuyến đường tùy chỉnh trong Rails
- 28. Đường ray Ruby - cách tìm nhiều tùy chọn?
- 29. đường dẫn url form_tag đường ray
- 30. Tùy chọn của ngày hôm nay cho đường dẫn di chuyển dễ dàng hơn để chơi 2
Câu hỏi hay. Tôi chưa bao giờ nghĩ về nó – marionmaiden
Bạn có muốn biết biến môi trường có bị thay đổi không? Bạn đã chạy một thử nghiệm để thực sự * xem * nếu nó thay đổi? –
Tại sao bạn không tự thử? –