AMD 構文への変換を開始したプロジェクトの最適化に取り組んでおり、いくつかの問題が発生しています。
私たちのバージョン管理ツールである Clearcase は、ファイルがチェックアウトされていない場合、ファイル システムに読み取り専用としてファイルを残します。プロジェクトを最適化するためにを使用しようとしたときにnode r.js
、それが問題を引き起こしていることがわかりました。具体的には、ビルド ファイルで最適化するモジュールとして定義したファイルへの書き込みアクセスを取得しようとしているようです。
私のビルドファイルは次のようになります。
{
baseUrl: "../",
mainConfigFile: "./config.js",
appDir: ".../../build/",
dir: "../",
modules: [{
name:"file1"
}]
}
file1.js をチェックインしたままにすると、エラー メッセージが表示される
Error: EACCES permission denied '.../file1.js'
at Object.fs.openSync (fs.js:427:18)
チェックアウトして書き込み権限を取得すると、問題なく動作します。私はこれをテストしましたが、動作するには書き込み権限が必要なようです。
これらのファイルはまったく書き込むべきではなく、読み取るだけでよいため、これがわかりません。これに対する回避策はありますか? 私は何か間違ったことをした?
また、この制限に理由があるのか (単に私のミスではない場合)、それともほとんどの人にとって問題にならない見過ごされたものなのかにも興味があります。この問題を抱えている他の人を見つけることができなかったので、私は比較的特殊な状況にある可能性があります (clearcase と Node.js を使用している人々の大きな重複はおそらくないでしょう)。