簡體   English   中英

Cordova 錯誤構建 - EPERM,不允許操作

[英]Cordova error building - EPERM, operation not permitted

我正在嘗試為我的項目構建一個 android APK 文件

C:\myApp>cordova build android
cp: copyFileSync: could not write to dest file (code=EPERM):C:\myApp\platforms\android\res\xml\config.xml

Error: EPERM, operation not permitted 'C:\myApp\platforms\android\res\xml\config.xml'
at Object.fs.openSync (fs.js:438:18)
at Object.fs.writeFileSync (fs.js:977:15)

我使用了 Windows 7 64 位。 可能是什么原因?

順便說一下,我的文件是由 subversion 版本控制的,我不確定是否是這種情況。

有人遇到過這個嗎?

重新安裝 android 作為平台,應該重新創建任何具有錯誤權限的文件夾

cordova platform remove android

cordova platform add android

我有同樣的問題。 這解決了這個問題:

sudo chown -R yourUserName foldername

開始菜單 -> 搜索“cmd” -> 右鍵單擊​​“cmd.exe”和“以管理員身份運行”

為我解決了這個問題。

另一種未明確提及的可能性是,如果您的版本控制系統在您簽入文件時將文件標記為只讀,那么這將在您的構建過程中導致 EPERM 錯誤。 您必須通過預構建事件或掛鈎(取決於您的開發環境)來解決此問題,以便在將文件復制到平台特定位置后從相關文件中刪除此屬性。

嘗試關閉您的代碼編輯器(例如:VS 代碼)

並再次運行/構建。

我知道這是一個奇怪的修復,但這個解決方案對我有用。

config.xml 是通過首先復制“platforms\\android\\cordova\\defaults.xml”文件生成的。 如果該文件是只讀的,那么 config.xml 也將是只讀的,Cordova 將無法修改它。

使這兩個文件都可寫,或者在構建之前從源代碼管理中檢出它們應該可以解決問題。

“錯誤:EPERM”始終表示權限被拒絕。
我解決了“錯誤:EPERM:不允許操作,打開'\\resources\\android\\icon\\drawable-ldpi-icon.png'”
通過刪除錯誤顯示的所需文件的只讀屬性。

有 2 個更改可以避免此錯誤

  1. 刪除錯誤中提到的文件的只讀屬性
  2. 以管理員權限執行命令提示符

我在這里嘗試了所有方法,但對我沒有任何效果。 所以這里是我的情況的解決方案:檢查防病毒(盾牌等) ,這是我的問題,關閉后,運行命令:

cordova platform rm android
cordova platform add android

它工作正常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM