自 Ant 1.10.0 起.
使用 Java 的 NIO 權限支援變更檔案權限。
此任務提供 chmod 和 attrib 平台特定功能的子集,且以與平台無關的方式提供。
如果未透過模式或權限屬性指定任何權限,則會從巢狀資源中移除所有權限。
此任務接受任意資源作為巢狀資源集合的一部分,但並非所有資源都支援設定權限。此任務不會對不支援設定權限的資源執行任何動作,例如 URL。
權限套用至巢狀資源集合中包含的所有資源。如果您希望不同的權限套用至任一類型的資源,您可能需要確保集合只傳回檔案或目錄。
屬性 | 說明 | 必要 |
---|---|---|
permissions | 要設定的權限,以逗號分隔的 PosixFilePermission 值名稱清單。 | 否 |
mode | 要設定的權限,以傳統 Unix 三位數八進位數字表示。 | 否 |
nonPosixMode | 如果無法變更檔案權限,因為檔案系統不支援 POSIX 檔案權限,則執行下列動作。可能的選項包括 fail(建置失敗)、 pass(僅記錄錯誤)、 tryDosOrFail(至少嘗試在 DOS 檔案系統上設定唯讀旗標,如果這也不可能,則失敗)和 tryDosOrPass(至少嘗試在 DOS 檔案系統上設定唯讀旗標,如果這也不可能,則僅記錄錯誤)。 |
否;預設為 fail |
failonerror | 如果設定權限失敗,是否停止建置。 | 否;預設為 true |
資源集合用於選取資源群組。
讓 start.sh 檔案對所有人可讀取和可執行,且讓擁有者可寫入。
<setpermissions mode="755"> <file file="${dist}/start.sh"/> </setpermissions>
讓 start.sh 檔案對所有人可讀取和可執行,且讓擁有者可寫入。
<setpermissions permissions="OWNER_READ,OWNER_WRITE,OWNER_EXECUTE,OTHERS_READ,OTHERS_EXECUTE,GROUP_READ,GROUP_EXECUTE"> <file file="${dist}/start.sh"/> </setpermissions>