[英]What is the meaning of “.:./*” in classpath?
我有以下腳本來運行MyDBCreateSchema/MyDBCreateSchema.class
來初始化數據庫。
java –cp ".:./*" MyDBCreateSchema dbHost 1433 id password DBName
什么是".:./*"
?
嗯,第一個“。” 前面的“:”表示當前目錄,所以包含了當前目錄下的所有.class文件。 “:”之后的“./*”我認為沒有任何意義,因為我認為 Java 不能擴展“*”字符。 如果是這樣,這可能意味着當前目錄下的所有子目錄也將包含在類路徑中(即,這些子目錄中的所有.class 文件將被包含在類路徑中)。
無論哪種方式,這都是非常不可讀的,在 bash 腳本和 append 中手動或使用以下命令創建單個目錄更有意義:
CLASSPATH="."
for DIRECTORY in $(ls /some/directory); do
CLASSPATH+="${CLASSPATH:+:}$DIRECTORY"
done
java -cp "$CLASSPATH" ...
你明白漂移...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.